- blogs:
- cles::blog

CentOS 6 で夜中に自動的に yum update を実行する


直接外のネットワークにつながっているサーバは安定性を多少犠牲にしたとしても自動的に yum update を実行するようになっていると便利なことがあります。これまでは cron に自分でスクリプトを仕込んでいたのですが、実は CentOS 6 にはオフィシャルにこれをやるためのパッケージが用意されていることが分かったので、乗り換えてみました。下記の通り、インストールは yum で一撃です。
設定については /etc/sysconfig/yum-cron があるので、YUM_PARAMETER で実行時のパラメータを指定したり、DOWNLOAD_ONLY を yes にしてインストールせずにダウンロードだけをしておくことや、CHECK_ONLY を yes にしてアップデートがあるかどうかのチェックだけを行うという使い方もできます。設定が済んだらサービスを有効化しておきましょう。
† cron で事足りるのでは?
ちょっと気になったのは上記のコマンドを実行してもデーモンらしきものがサーバに見当たらないこと。普通に考えて日時のアップデートは cron で実行すればよいはずなのですが、何で init スクリプトが用意されてるんだろう・・・・・・と思いながらスクリプトをの中身をのぞいてみてびっくり。init スクリプトは /var/lock/subsys/yum-cron という空ファイルを touch しているだけでした。
肝心の本体スクリプトは /etc/cron.daily/0yum.cron にあって、これが日時で呼び出されるのですが、冒頭が下記のようになっていて init スクリプトが作るファイルをみて起動するかしないかを決定していることが分かりました。こういうアーキテクチャもあるんですね。
/etc/cron.daily/0yum.cron
このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/6758
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
コメントは承認後の表示となります。
OpenIDでログインすると、即時に公開されます。
OpenID を使ってログインすることができます。
2 . Windows 10 で勝手にログアウトされないようにする(31837)
3 . Word で数式がグレーアウトされていて挿入できないときは(26725)
4 . リモートデスクトップで Alt + PrtSc と同じことをするには(22165)
5 . Visual Studio 2017/2019 で scanf() がエラー(C4996)になるときは(21456)