У меня есть машина с пользовательской сборкой ядра 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
Удаление этого привело к нормальному ведению журнала.