最近プロジェクトでAmazon Linuxを使っているのですが、
yum updateをしろというメッセージがssh接続時に表示されるので、
メッセージが表示される原因と対策をまとめます。
/etc/motd
Linuxにssh接続時にヘッダーに出力される内容は/etc/motdという設定ファイルで設定します。
motdとはlinuxのログイン時に表示されるメッセージのことです。
motdの仕組み
/etc/motdはシンボリックリンクで以下のようになっています。
# ls -la /etc/motd
lrwxrwxrwx 1 root root 25 5月 10 05:02 2013 /etc/motd -> /var/lib/update-motd/motd
なので、実態は「/var/lib/update-motd/」配下にあることになります。
どんな設定ファイルがあるかというと。
# ls -la /etc/update-motd.d
合計 20
drwxr-xr-x 2 root root 4096 9月 9 10:45 2013 .
drwxr-xr-x 72 root root 4096 9月 9 11:48 2013 ..
-rwxr-xr-x 1 root root 334 9月 9 10:45 2013 30-banner
-rwxr-xr-x 1 root root 134 1月 23 08:47 2013 70-available-updates
-rwxr-xr-x 1 root root 2103 1月 23 08:47 2013 75-system-update
こんだけファイルがありました。
/var/lib/update-motd/motdはcron.dailyでupdate-motdというプログラムが実行されて、
日次で内容を書き換えます。
そのため、常時パッケージが新しくないと新しくしなさいとメッセージを出力します。
「Run "sudo yum update" to apply all updates.」メッセージの非表示・表示
yum updateを定期的に掛けない環境だとこのメッセージは大変鬱陶しいと思いますので、
今回は日次で実行されるupdate-motdを無効化・有効化させるコマンドでメッセージの非表示・表示をさせます。
表示
$ sudo update-motd --enable
非表示
$ sudo update-motd --disable
これで鬱陶しいメッセージはヘッダーに出力されてないので、
yum updateを実行した環境で是非試してみてください。