ダイナミックモードをしたいのですが、どうすればいいのかわかりません。
私が見つけたことを試して、シンボリックリンクを、または/etc/update-motd.d/00-header
に追加しました。10-sysinfo
90-footer
/etc/motd
/var/run/motd.dynamic
/run/motd.dynamic
/run/motd
/var/run/motd
私は次の行を持っています/etc/pam.d/sshd
:
# Print the message of the day upon successful login.
# This includes a dynamically generated part from /run/motd.dynamic
# and a static (admin-editable) part from /etc/motd.
session optional pam_motd.so motd=/run/motd.dynamic
session optional pam_motd.so noupdate
私もsystemdについて混乱しています。
これを行う方法はありますか?誰かが簡単な富の例を挙げることができますか?
ベストアンサー1
この状況は長年にわたって変更されました。
最初は(静的)です/etc/motd
。
update-motd
その後、Ubuntuはcronが呼び出すスクリプトに基づいて独自のパッケージを提供します。
最後に、PAMはUbuntuの/etc/update-motd.d/アイデアをコピーしたため、Debianや他のオペレーティングシステムにもこの動作があります。
ここに説明があります
https://ownyourbits.com/2017/04/05/customize-your-motd-login-message-in-debian-and-ubuntu/
だから今起こっていることは次のとおりです。 PAMは存在する場合にのみ読みます/var/run/motd.dynamic
(/etc/motd
投稿から貼り付け)。
/etc/motd
- 古典的な静的ファイル。 Ubuntu 16.04 LTSにはもう存在せず、/var/run/motdへのシンボリックリンクとしても存在しません。作成されると、その内容も印刷されます。/var/run/motd
- これはUbuntuの最初の実装で使用されました。廃止予定です。 PAMでは無視されます。/var/run/motd.dynamic
- 現在ログインしているときに表示される内容。 /etc/init.d/motd によって起動されるたびに更新されます。 PAMは/etc/update-motd.d/にあるスクリプトを実行して更新することもできます。/etc/motd.tail
– /etc/update-motd.dを埋めるために使用されるUbuntuパッケージ。そのうちの1つはファイルの内容をキャプチャするため、静的コンテンツを簡単に追加できます。スクリプトがパッケージに存在しなくなったため、ファイルが期待した効果を得ることはできません。
投稿の例
mkdir /etc/update-motd.d
rm -f /etc/motd # in Debian still exists
cat > /etc/update-motd.d/10logo <<EOF
#!/bin/sh
echo
cat /etc/issue
EOF
cat > /etc/update-motd.d/20updates <<'EOF'
#!/bin/sh
echo
echo "uptime is $( uptime )"
echo "date is $( date )"
EOF
chmod a+x /etc/update-motd.d/*