サーバーの 1 つにハードウェアの問題が発生しており、カーネルが次のようなメッセージを継続的に出力しています。
kernel: EDAC MC0: UE row 0, channel-a= 0 channel-b= 1 labels "-": NON-FATAL recoverable (Branch=0 DRAM-Bank=0 Buffer ID = 0 RDWR=Read RAS=0 CAS=0 NON-FATAL recoverable Err=0x2000 (FB-DIMM Configuration Write error on first attempt))
/var/log/messagesにメッセージを記録するだけでなく、全てログインしたターミナル セッション (システム コンソールだけではありません)。
通知を受けるのは良いことですが (もちろん RAM の問題は修正します)、このサーバーで作業することは不可能になっています。行やファイルなどの編集の途中でメッセージが表示されます。
これらのメッセージを抑制するにはどうすればよいですか? 理想的には、現在のセッションでこれを実行でき、他のユーザーにはメッセージが表示されないようにしたいと思います。
システムはCentos 5です。
答え1
/etc/syslogd.conf ファイルで宛先として '*' が使用されている場合、syslogd は 'wall' 経由ですべてのユーザーにメッセージを送信するようです。
デフォルトの設定には次の行が含まれています:
*.emerg *
この行をコメントアウトして syslogd をリロードするとメッセージは完全に抑制されますが、後で再度有効にすることを忘れないようにしてください。
1 つのセッションだけメッセージを抑制する方法は見つかりませんでした。コマンド「mesg」はセッション中の受信メッセージを停止できるはずですが、これらのメッセージは停止しませんでした。
答え2
コンソールに次のようなブロードキャスト メッセージが印刷される場合:
Message from syslogd@hostname
Broadcast message from systemd-journald@hostname
これらは緊急メッセージとして処理されますが、オフにする必要がある場合は、このファイルを編集します。マシンによっては/etc/rsyslog.conf
、この場所にある可能性があります。次に、この行を次のようにコメントします。/etc/rsyslog.d/50-default.conf
#*.emerg :omusrmsg:*
いずれにしても、事前にこれらのメッセージを確認しておけば、緊急メッセージの原因が何であるかを知ることができます。
より詳細な回答については、以下を参照してください。https://stackoverflow.com/a/41456076/366884