Назад | Перейти на главную страницу

Скрытие сообщений ядра Linux из консоли

У меня есть машина с пользовательской сборкой ядра Linux 3.2.12-rt на основе Debian Squeeze.

Я получаю сообщения ядра, выводимые на консоль. Я не хочу этого делать. Я знаю Зачем он делает это:

# 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 (и это не закомментировано).

Я пробовал использовать grepping для чего-либо еще, что могло установить printk, но не нашел ничего полезного. (Это может просто означать, что я не искал в нужных местах или в нужных вещах.)

$ 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 в каком-то сценарии загрузки, но должен быть способ получше.)

Я нашел проблему. /etc/rc.local была следующая строка:

dmesg -n 8

Удаление этого привело к нормальному ведению журнала.