web-dev-qa-db-ja.com

コンソールからのLinuxカーネルメッセージの非表示

DebianSqueezeに基づくLinuxカーネル3.2.12-rtのカスタムビルドを実行しているマシンがあります。

カーネルメッセージがコンソールに出力されます。私はそれをしたくありません。私は知っていますなぜそれはそれをしています:

# cat /proc/sys/kernel/printk
8     4     1     3

しかし、その最初の値がどのように8に設定されているのかわかりません。そして、それを実行しているものはすべて停止させたいのです。

カーネル構成を調べました。 CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4があり、組み込みのコマンドラインはありません。

ブートコマンドラインを調べました。 quietがあります。 quiet loglevel=4に変更してみましたが、うまくいきませんでした。

/etc/sysctl.confにはkernel.printk = 3 4 1 3があります(コメントアウトされていません)。

Printkを設定した可能性のある他の何かをgrepしようとしましたが、有用なものは見つかりませんでした。 (それは、私が適切な場所や適切なものを探していなかったことを意味するかもしれません。)

$ grep console /etc/rsyslog.conf
# I like to have messages displayed on the console, but only on a virtual
# console I usually leave idle.
# The named pipe /dev/xconsole is for the `xconsole' utility.  To use it,
# you must invoke `xconsole' with the `-file' option:
#    $ xconsole -file /dev/xconsole [...]
         *.notice;*.warn       |/dev/xconsole

他にどこを見られますか? (確かに、ブートスクリプトで/proc/sys/kernel/printkを書き直すことはできますが、もっと良い方法が必要です。)

4
Miral

私は問題を見つけました。 /etc/rc.local次の行がありました:

dmesg -n 8

これを削除すると、ログが通常に戻りました。

0
Miral