14.04では、motdのパッケージ/再起動の警告が表示されるには追加のログインが必要です。

14.04では、motdのパッケージ/再起動の警告が表示されるには追加のログインが必要です。

注: これは新しい問題ではなく、しばらく前から続いています。

新しいアップデートが利用可能になったとき、またはアップデートをインストールした後に SSH 経由でログインすると、ログアウトして再度ログインしない限り、MOTD には最後に行った変更が反映されません。

今朝、アクセス権のないユーザーとしてログインしたところsudo、MOTD に次の内容が表示されました。

8 packages can be updated.
6 updates are security updates.

そこで、2 番目の SSH セッションを開き、sudoアクセス権を持つユーザーとしてログインして、MOTD に次のように表示されました。

16 packages can be updated.
14 updates are security updates.

これらのアップデートをインストールし、これをテストするために非sudoユーザーをログアウトし、別の端末で再度ログインすると、MOTDに次のように表示されました。

16 packages can be updated.
14 updates are security updates.

そのユーザーをログアウトして再度ログインしたところ、MOTD に次の内容が表示されました。

0 packages can be updated.
0 updates are security updates.

*** System restart required ***

これを正しく最新の状態にするには、何らかのキャッシュが実行されているか、または何らかの設定を無効にする必要がありますか?

答え1

これは、バグ 1368864Ubuntu のトラッカーで。

修正するには、次の 2 つのファイルを変更する必要があります。

1つ目は/etc/pam.d/login

次の行を見つけます:

session    optional   pam_motd.so  motd=/run/motd.dynamic noupdate
session    optional   pam_motd.so

次のように変更します。

session    optional   pam_motd.so  motd=/run/motd.dynamic
session    optional   pam_motd.so noupdate

次に開く/etc/pam.d/sshd

次の行を見つけます:

session    optional     pam_motd.so  motd=/run/motd.dynamic noupdate
session    optional     pam_motd.so # [1]

次のように変更します。

session    optional     pam_motd.so  motd=/run/motd.dynamic
session    optional     pam_motd.so noupdate # [1]

両方のファイルを変更する必要がある理由は、 のみを変更するとlogin、SSH 経由で行われたログインで、初回ログイン時にシステム情報が表示されなくなるためです。

関連情報