Ubuntu Linux 12.10に移行したばかりで、最初のmotdを適切にセットアップしたいです。以下を実行しましたが、ほとんどのUbuntuバージョンが持っているように見えるmotd.tailと呼ばれるセカンダリファイルを持っているのではなく、motdファイルが1つしかないことに気付きました。 motdファイルのバックアップコピーを作成してからそのファイルに書き込むか、ファイルに直接書き込む必要がありますか?また、このファイルに書き込んだ後、メッセージを表示するには実行可能にする必要がありますか?
ls -l motd* // output: motd -> /var/run/motd
ご覧のとおり、/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
のいずれかを実行可能にする必要はありません。これらは実行するためのものではないからです。
明らかに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モジュールが実行されることを忘れないでください。そうしないと、メッセージが表示されません。
前回の回答以降、状況がかなり変わったため、これを会話に追加したかったのです。
要するに、現在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パッケージ。そのうちの1つはこのファイルのコンテンツをcatするため、静的コンテンツを簡単に追加できました。そのスクリプトはパッケージにもう存在しないため、ファイルには意図した効果がありません。ここで情報を更新しました
https://ownyourbits.com/2017/04/05/customize-your-motd-login-message-in-debian-and-ubuntu/