无人值守升级后首次登录时,Ubuntu Trusty 未显示“需要重启系统”

无人值守升级后首次登录时,Ubuntu Trusty 未显示“需要重启系统”

我正在运行 ubuntu 14.04.3,并将无人值守升级配置为仅安装安全更新。

一切按预期进行,当需要重新启动时,会发送如下电子邮件通知:

Unattended upgrade returned: True

Warning: A reboot is required to complete this upgrade.

令人费解的是,当我通过 ssh 登录执行重启时,我希望登录横幅也能告诉我需要重启,但是没有,我只得到:

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

但是,如果我立即注销并再次登录,然后我得到:

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

*** System restart required ***

我意识到这些登录消息是由生成的pam_motd,并且的(默认)配置/etc/pam.d/sshd如下:

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

该文件似乎/run/motd.dynamic只是在更新第一次登录处理就完成了,但为什么noupdate默认配置是这样的( )?conf 文件中 pam_motd.so 的第二行有什么用?注释[1]看起来应该是指脚注,但文件中没有这样的注释。

答案1

这是个 bug。Debian sshd pam 配置已更改为noupdate在第一行添加,显示文件/run/motd.dynamic2012 年 5 月 21 日,以防止 motd 更新脚本运行两次。它应该被添加到第二行,显示静态/etc/motd(如果存在)。这在源代码中得到了纠正2014 年 8 月 5 日

我仍然不知道配置文件中的注释[1]是什么意思,但是当debian/ssh.pam2003 年 9 月 1 日首次将源文件添加到 openssh-server 包时,它们就已经存在了。

相关内容