![Ubuntu Linux 12.10 每日消息](https://linux22.com/image/832265/Ubuntu%20Linux%2012.10%20%E6%AF%8F%E6%97%A5%E6%B6%88%E6%81%AF.png)
我刚刚过渡到 Ubuntu Linux 12.10,我想正确设置我的第一个 motd。我运行了下面的命令,发现我只有一个 motd 文件,而不是大多数 Ubuntu 版本似乎都有的名为 motd.tail 的辅助文件。我应该创建 motd 文件的备份副本,然后写入该文件,还是直接写入该文件?此外,一旦我写入此文件,我是否需要使其可执行以显示消息?
ls -l motd* // output: motd -> /var/run/motd
答案1
正如您所见,/etc/motd
是 的符号链接/var/run/motd
。
/var/run/motd
由目录中的一系列脚本更新/etc/update-motd.d
。这些脚本中的最后一个99-footer
会打印 的内容/etc/motd.tail
(如果存在),并将 的输出99-footer
附加到/var/run/motd
。
中的一条评论/etc/update-motd.d/99-footer
说:
# motd.tail is reserved for the admin to append static
# trailing information to a dynamically generated
# /etc/motd.
#
# To add dynamic information, add a numbered
# script to /etc/update-motd.d/
/etc/motd.tail
将静态内容附加到 的通常方法也是如此/etc/motd
。
当然,如果您愿意,您可以更改所有这些,例如,创建/etc/motd
一个包含您喜欢的任何内容的独立文件。但这样一来,您就会丢失现有脚本添加的有用信息。
不,您不需要使motd
或motd.tail
可执行,因为它们不是为了被执行的。
答案2
显然不是 100% 的 ubuntu,但我猜处理方式并没有太大的区别。
/etc/motd
仅仅是一个符号链接,var/run/motd
在系统启动时它会被的内容填充/etc/mod.tail
。
/etc/motd.tail
因此,如果您不想破坏这个方案,您只需在一个文件中填充您的信息,而其他所有内容则保持原样。
这是 debian 上的输出man motd
。我猜 ubuntu 也一样,不过最好自己检查一下。
描述
The contents of /etc/motd are displayed by login(1) after a successful login but just before it executes the login shell. The abbreviation "motd" stands for "message of the day", and this file has been traditionally used for exactly that (it requires much less disk space than mail to all users). On Debian GNU/Linux this file is a symbolic link pointing to /var/run. The contents of this file are regenerated upon every system boot based on the contents of /etc/motd.tail.
文件 /etc/motd /etc/motd.tail
... 并且不要忘记确保 pam_motd 模块在登录期间运行。否则您将看不到任何消息。
答案3
我想将这一点添加到对话中,因为自上次回答以来情况已经发生了很大变化。
简而言之,MOTD 现在由 pam_motd 运行,/etc/motd
不再是一个符号链接……它甚至不存在。
/etc/motd
– 经典的静态文件。Ubuntu 16.04 LTS 中不再存在,甚至不再作为 /var/run/motd 的符号链接。但是,如果创建了该文件,其内容也会被打印出来。/var/run/motd
– 这是 Ubuntu 首次实施时使用的。现在不再使用。它只是被 PAM 忽略了。/var/run/motd.dynamic
– 这是当前登录时显示的内容。每次启动时都会由 /etc/init.d/motd 更新。如果存在 /etc/update-motd.d/ 中的脚本,PAM 也会通过运行这些脚本来更新它。/etc/motd.tail
– 用于填充 /etc/update-motd.d 的 Ubuntu 软件包。其中一个会 cat 此文件的内容,因此很容易添加静态内容。该脚本不再存在于软件包中,因此该文件没有达到预期的效果。
此处更新信息
https://ownyourbits.com/2017/04/05/customize-your-motd-login-message-in-debian-and-ubuntu/