#navi_header|技術| CentOS6系では、yum-cronを使うとパッケージ更新の自動チェック/DL/アップデートを簡単に行える。 インストール:(依存パッケージは yum-plugin-downloadonly) # yum install yum-cron 構成: #pre||> # rpm -ql yum-cron /etc/cron.daily/0yum.cron /etc/rc.d/init.d/yum-cron /etc/sysconfig/yum-cron /etc/yum/yum-daily.yum /etc/yum/yum-weekly.yum /usr/share/doc/yum-cron-3.2.29 /usr/share/doc/yum-cron-3.2.29/COPYING /usr/share/man/man8/yum-cron.8.gz ||< ※ [[1319]] でも紹介しているが、CentOS6系の最新だと、"/etc/cron.daily" 以下は cron ではなく anacron により実行される。 起動:yum-cronはcronジョブであるが、serviceとして起動しておく必要がある。serviceとして起動するとロックファイルが作成され、yum-cronのジョブはそれを見て実際の処理を開始する。 # service yum-cron start Enabling nightly yum update: [ OK ] # chkconfig yum-cron on # chkconfig --list | grep yum-cron yum-cron 0:off 1:off 2:on 3:on 4:on 5:on 6:off 設定: /etc/sysconfig/yum-cron の、以下の3項目がメイン。 #pre||> # Don't install, just check (valid: yes|no) CHECK_ONLY=no # Check to see if you can reach the repos before updating (valid: yes|no) CHECK_FIRST=no # Don't install, just check and download (valid: yes|no) # Implies CHECK_ONLY=yes (gotta check first to see what to download) DOWNLOAD_ONLY=no ||< 上記はデフォルト値で、CHECK_ONLY も DOWNLOAD_ONLY も no なので、自動的にチェック&インストールまで実施される。 DOWNLOAD_ONLY=yesにしておくと、以下のようなメールが届く。 #pre||> 題名:Anacron job 'cron.daily' on (ホスト名) 本文: /etc/cron.daily/0yum.cron: New updates available for host (ホスト名) audit.x86_64 2.2-4.el6_5 updates ... Updates downloaded, use "yum -C update" manually to install them. ||< "yum -C update" を行うと、プロンプト付きでの更新になる。 #pre||> # yum -C update Loaded plugins: downloadonly, fastestmirror, presto Setting up Update Process Resolving Dependencies --> Running transaction check (...) shared-mime-info x86_64 0.70-4.el6 base 209 k Transaction Summary ============================================================================================================================================ Install 7 Package(s) Upgrade 89 Package(s) Total size: 103 M Is this ok [y/N]: N ||< "yum -C -y update" で自動的に行員をインストールする。 #pre||> # yum -C -y update (...) Installed: kernel.x86_64 0:2.6.32-431.29.2.el6 (...) Complete! ||< 更新前: # uname -a Linux ip-10-120-73-205 2.6.32-358.6.2.el6.x86_64 #1 SMP Thu May 16 20:59:36 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux 更新→再起動後:更新に成功している。 # uname -a Linux ip-10-120-73-205 2.6.32-431.29.2.el6.x86_64 #1 SMP Tue Sep 9 21:36:05 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux 除外パッケージや対象パッケージの絞り込みは出来るか? - 除外パッケージについては、"/etc/yum.conf" の "exclude" で設定できるようだ。 -- TEMPEST: Fedoreの技 yumで指定のパッケージを自動更新しないようにするには --- http://www.tempest.jp/linux/fedora/documents/text089.html - 対象パッケージの絞り込みについては不明。 参考リンク: - yum を使って システムアップデートを行う (自動化も) | レンタルサーバー・自宅サーバー設定・構築のヒント -- http://server-setting.info/centos/firststep.html - yumを自動で更新チェックする、自動で更新する -- http://pentan.info/server/linux/yum_updatesd.html - はじめての自宅サーバ構築 - Fedora/CentOS - yum plugin「yum-cron」の導入 -- http://kajuhome.com/yum_cron.shtml - CentOS6 で yum-cron で yum の更新をメール通知する -- http://futuremix.org/2012/02/centos6-yum-cron-update - [Linux][CentOS] yum-cron でアップデート対象のパッケージをメール通知する | バシャログ。 -- http://c-brains.jp/blog/wsg/11/09/22-111958.php - yum-cron のすすめ | Carpe Diem -- http://www.sssg.org/blogs/naoya/archives/748 - CentOS 6 で夜中に自動的に yum update を実行する -- http://blog.cles.jp/item/6758 #navi_footer|技術|