在Ubuntu 14.04上没有MOTD ……?

我最近刚刚安装了Ubuntu 14.04。 当我SSH时,没有MOTD(是的,我在sshd_config中设置了相应的命令)。

我阅读了一些关于设置MOTD的教程,但我意识到虽然我有/etc/update-motd.d,但是没有/ etc / motd文件,也没有/ var / run / motd文件。

如何设置这些以便我可以通过SSH获得MOTD?

在Ubuntu 14.04.2 LTS的基本安装上,只需删除所需的消息:

 /etc/motd 

默认情况下,MOTD将出现在其他动态MOTD内容的末尾。 例如,这是来自Vagrant ubuntu / trusty64(v20150506.0.0)框的输出,其中添加了/ etc / motd文件:

 $ vagrant ssh Welcome to Ubuntu 14.04.2 LTS (GNU/Linux 3.13.0-52-generic x86_64) * Documentation: https://help.ubuntu.com/ System information as of Thu May 14 20:06:56 UTC 2015 System load: 0.39 Processes: 78 Usage of /: 2.8% of 39.34GB Users logged in: 0 Memory usage: 24% IP address for eth0: 10.0.2.15 Swap usage: 0% Graph this data and manage this system at: https://landscape.canonical.com/ Get cloud support with Ubuntu Advantage Cloud Guest: http://www.ubuntu.com/business/services/cloud 0 packages can be updated. 0 updates are security updates. ##################################### Howdy! This message is from /etc/motd ##################################### Last login: Thu May 14 20:06:56 2015 from 10.0.2.2 vagrant@vagrant-ubuntu-trusty-64:~$ 

如果您正在使用默认设置处理系统,那就是它的全部内容。


其他一些故障排除说明

  • 使用“/ etc / motd”是对早期版本的更改。 12.02的建议是使用“/etc/motd.tail”。 这在14.04.2中不起作用。

  • 我见过的其他建议包括更改“/ etc / ssh / sshd_config”中的一些值。 如果这些已被更改,这里的默认值有效:

     UsePAM yes PrintMotd no 
  • 同样,这里是我看到的/etc/pam.d/login的默认值:

     session optional pam_motd.so motd=/run/motd.dynamic noupdate session optional pam_motd.so 

这就是我见过的用于故障排除的所有内容。

尝试添加:

  UsePAM yes 

在您的/etc/ssh/sshd_config中,如此错误和无法在Ubuntu 10.04服务器中正确配置MOTD一样(未找到update-motd命令)

启用UsePAM后,PAM将自动更新MOTD并在您登录时为您打印。您必须禁用PrintMOTD或SSH也将打印它,因此您将看到它两次,这很烦人。

我不确定这一点,但如果你得到两次motd,你应该将PrintMOTD设置为no。

/etc/pam.d/sshd下行添加到/etc/pam.d/sshd

 session optional pam_motd.so motd=/run/motd.dynamic noupdate