Я использую Centos 6, журнал rsyslog. Консоль залита сообщениями ядра.
- Klogd не работает (я использую rsyslog)
- Конфигурация Rsyslog ничего не направляет на консоль
- Даже попытался остановить rsyslog вообще
Все еще что-то наводняет мою консоль сообщениями журнала ядра. Что это такое и как мне это остановить?
Обновление : это сообщения, сгенерированные ядром (аппаратные средства, iptables и т. Д.), Которые выводятся /proc/kmsg
, например, так:
Shorewall: pub2loc: DROP: IN = br0 OUT = MAC = xxx SRC = xxx DST = xxx LEN = 60 TOS = 0x00 PREC = 0x00 TTL = 128 ID = 15731 DF PROTO = TCP SPT = 63767 DPT = 3493 ОКНО = 8192 RES = 0x00 SYN URGP = 0
xterm
окне, поэтому, если консоль затоплена, это меня не беспокоит.)Ответы:
Я предлагаю вам изменить свой
/etc/sysctl.conf
. В частности, вы хотите настроить строку kernel.printk .Я не уверен, каковы настройки по умолчанию для Centos, но мне кажется, что у вас есть более подробные настройки, чем вам нужно.
Также посмотрите раздел shorewall по ведению журнала. Вам не нужно использовать цель LOG для регистрации, вы можете использовать другие инструменты или настроить серьезность журнала, а также настроить вещи, чтобы контролировать, куда отправляются ваши сообщения.
источник
Чтобы установить значения во время выполнения, используйте
sysctl
. (Я полагаю, что вы также можете написать/proc/sys/kernel/printk
напрямую, и, очевидно, вы также можете использовать,dmesg -n CUR
как описано здесь )Дисплей:
Сепараторы в выходных данных являются одиночными вкладками, кстати.
Поставил. Здесь разделители - просто пробелы. Работает так же.
См.
man sysctl
«Настройка параметров ядра во время выполнения» для получения дополнительной информации.Напоминание об уровнях серьезности и четырех значениях kernel.printk, указанных Брайаном выше:
На моем CentOS: 7 4 1 7
Это слишком шумно, я просто хочу критического и вверх (без ошибок). Немаркированные сообщения следует рассматривать как предупреждение, поэтому DEF хорош:
Установите на: 3 4 1 3
источник
man klogctl
также объясняет уровни.Я также нашел это полезным. На дистрибутивах на основе RHEL вы можете
cat /proc/sys/kernel/printk
увидеть текущие настройки.Четыре значения находятся в файле printk. Каждое из этих значений определяет свое правило для работы с сообщениями об ошибках. Первое значение, называемое уровнем журнала консоли, определяет самый низкий приоритет сообщений, выводимых на консоль. (Обратите внимание, что чем ниже приоритет, тем выше номер уровня журнала.) Второе значение задает уровень журнала по умолчанию для сообщений без явного уровня журнала, прикрепленного к ним. Третье значение задает минимально возможную конфигурацию уровня журнала для уровня журнала консоли. Последнее значение устанавливает значение по умолчанию для лог-уровня консоли.
Использование параметра LOGLEVEL в / etc / sysconfig / init для установки уровня журнала консоли больше не поддерживается. Чтобы установить уровень журнала консоли в Red Hat Enterprise Linux 6, передайте loglevel = 'в качестве параметра времени загрузки. Например, loglevel = 6 будет печатать все сообщения меньше 6 (не равно просто меньше).
Кредит для:
источник
Вот "официальный" способ сделать это, согласно RedHat :
источник
Вы также можете временно отключить ведение журнала ядра на консоли, используя:
Смотрите также: https://askubuntu.com/questions/97256/how-do-i-disable-messages-or-logging-from-printing-on-the-console-virtual-termin
источник
Вы видите сообщения журнала ядра, напечатанные на консоли. То, какие сообщения журнала достигают консоли, зависит от текущего установленного уровня журнала консоли.
Когда cmdline ядра включает в себя
quiet
параметр ядра, результирующий уровень журнала консоли равен4
(т.е. ошибки и хуже). Без этого он установлен7
(т.е. информация и хуже).Вы можете просмотреть активные параметры ядра с помощью
cat /proc/cmdline
и текущий уровень журнала консоли с помощьюsysctl kernel.printk
. Это может быть динамически изменено сdmesg -n X
(или даже сsysctl -w
).Чтобы сделать изменение постоянным, вы можете добавить параметры ядра в cmdline ядра (например,
quiet
и / илиloglevel=X
) или добавить.conf
файл sysctl в/etc/sysctl.d
.Параметр ядра можно добавить так:
источник
Поскольку это сайт, связанный с переполнением стека, я начну с того, что вам не следует отключать вывод, вы должны исправлять ошибки.
Если вы находитесь в консоли и даже не видите, что делаете, из-за сообщений попробуйте набрать это.
sudo dmesg -D
Это должно сделать достаточно тихо, чтобы посмотреть на другие решения.
источник
Если вы находитесь в реальной ситуации, вы можете просто временно отключить службу системного журнала в случае, если есть такой поток, который вы не можете просмотреть или напечатать что-либо правильно.
источник