我正在运行 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.dynamic
,2012 年 5 月 21 日,以防止 motd 更新脚本运行两次。它应该被添加到第二行,显示静态/etc/motd
(如果存在)。这在源代码中得到了纠正2014 年 8 月 5 日。
我仍然不知道配置文件中的注释[1]
是什么意思,但是当debian/ssh.pam
2003 年 9 月 1 日首次将源文件添加到 openssh-server 包时,它们就已经存在了。