
注: これは新しい問題ではなく、しばらく前から続いています。
新しいアップデートが利用可能になったとき、またはアップデートをインストールした後に 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 経由で行われたログインで、初回ログイン時にシステム情報が表示されなくなるためです。