ログイン時にMOTDを更新

ログイン時にMOTDを更新

CentOSサーバーのログイン手順を修正しており、次のコマンドを使用してMOTDを更新したいと思います。linux_logoプログラム。いくつかの方法を試してみましたが、目的の結果は出ませんでした。次のコマンドで始まります。

/usr/bin/linux_logo -c -u -y -t "$R" > /etc/motd

ここで更新する主な情報は稼働時間です。

私のファイルに追加し、フォルダの新しいbashスクリプト.bashrcにコマンドを追加して実行可能にしました。/etc/profile.d/どちらの方法もログイン時に実行されますが、MOTDが印刷された後にのみ実行されるため、ログインが必要です。

また、ランタイムレベル345で起動するように設定するコマンドを含むinitスクリプトを生成しましたが、chkconfig起動時にスクリプトを実行させると思います。

sshd_configまた、私のファイルに以下を追加してみました。

ForceCommand /usr/bin/linux_logo -c -u -y -t "$R" > /etc/motd

これにより、ログインするたびにSSH接続が閉じます。/

これらはすべてインターネット検索中に見つけた同様の投稿の提案なので、何かが欠けているようです。この時点でお手伝いいただきありがとうございます。

要約すると、motdを印刷する前にログイン時に次のようなコマンドを実行したいと思います。可能ですか?

if [ -f /usr/bin/linux_logo ]; then
  /usr/bin/linux_logo -c -u -y -t "$R" > /etc/motd
fi

ベストアンサー1

~によるとウィキペディア記事/etc/motdと言う今後ログインシェルを実行します。これは.bashrc、ファイルにどの項目が含まれても機能しない理由を説明します。

パスとリンクchkconfigの更新は/etc/rcX.d/実際に起動時にのみ行われます。

調査することができる1つは、それを/etc/motd名前付きパイプ(mkfifo /etc/motd)に置き換え、プログラムが何らかの方法でそのパイプの読み取り値を検出し、必要な出力で埋めるようにすることです。

おすすめ記事