Fedora や CentOS でRPMのアップデート情報をメール通知する

Fedora や CentOS などパッケージ管理に yum を使っているディストリビューションで,アップデートパッケージがあることをメールで通知するには, /etc/yum/yum-updatesd.conf を編集します。
emit_via = dbus はデスクトップ用の設定なので email に変更し, run_interval と updaterefresh を適当な間隔に変更します。

[main]
# how often to check for new updates (in seconds)
run_interval = 86400
# how often to allow checking on request (in seconds)
updaterefresh = 3600

# how to send notifications (valid: dbus, email, syslog)
emit_via = email

デフォルトでは, 通知メールの From: と To: はそれぞれ root になっているので,変更したい場合は次の設定を追加します。

email_to = root@example.com
email_from = yum-updatesd@example.com

設定が完了したら,忘れずにサービスを再起動。

# /sbin/service yum-updatesd reload

設定した宛先に下記のようなメールが送られてくれば成功です。

Subject: yum: 1 Updates Available (on example)
From: yum-updatesd@example.com
To: root@example.com

Hi,
This is the automatic update system on example.
There are 1 package updates available. Please run the system updater.

Packages available for update:
    traceroute.x86_64        3:2.0.10-1.fc8         updates

Thank You,
Your Computer

はずなんだけど,うまく動かない…
yum-updatesd は各所で評判が悪いみたいなので,後でソースを見ることにして, yum-cron をインストールします。

# yum install yum-cron

デフォルトだと勝手にパッケージをアップデートしてしまうので,チェックを行うだけにします。 /etc/sysconfig/yum-cron を編集。

# Don't install, just check (valid: yes|no)
CHECK_ONLY=yes

サービスを自動起動するように設定して完了。

# /sbin/chkconfig yum-cron on
# /sbin/service yum-cron start
夜間 yum 更新の有効化中:                                   [  OK  ]

アップデートパッケージがある場合は, Cron Daemon から送られてくるメールに次のようなメッセージが表示されるようになりました。

/etc/cron.daily/yum.cron:

New updates available for host example

traceroute.x86_64            3:2.0.10-1.fc8         updates


Leave a comment





このエントリーのはてなブックマーク (-)