注意:这不是一个新问题并且已经存在了一段时间。
如果您在有新更新可用时或安装更新后通过 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 进行的任何登录都将无法在第一次登录时显示系统信息。