在 14.04 中,motd 中的 Packages/reboot 警告需要額外登入才能顯示

在 14.04 中,motd 中的 Packages/reboot 警告需要額外登入才能顯示

注意:這不是一個新問題,並且已經持續了一段時間。

如果您在有新更新可用時或安裝更新後透過 SSH 登錄,MOTD 不會反映您上次所做的變更...除非您登出然後再次登入。

我今天早上以無權sudo訪問的用戶身份登錄,並在 MOTD 中看到了以下內容:

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

因此,我打開了第二個 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

這被歸檔為錯誤 1368864在 Ubuntu 的追蹤器中。

該修復需要修改一對文件:

第一個是/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 進行的任何登入都將無法顯示系統資訊。

相關內容