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

kernel.log остается пустым: «rsyslogd: imklog: невозможно открыть журнал ядра (/ proc / kmsg): операция запрещена».

Я использую VPS (Ubuntu 14.04.2 LTS, Kernel 3.13.0-042stab094.8, rsyslog 7.4.4-1ubuntu2.5), и kernel.log остается пустым только с этой строкой:

rsyslogd: imklog: cannot open kernel log (/proc/kmsg): Operation not permitted.

На сервере были предварительно настроены syslogd и klogd из busybox. Я деинсталлировал их и установил rsyslog с помощью apt-get. Все вроде нормально работает. У меня есть записи во всех остальных файлах журнала.

Я не уверен, связано ли это с этой ошибкой: https://bugs.launchpad.net/ubuntu/+source/rsyslog/+bug/1366829

Я думаю, что VPS - это не виртуальная машина, а контейнер. Непривилегированные контейнеры не имеют доступа к журналу ядра по соображениям безопасности.

Если вам не нужен или у вас недостаточный доступ к системе для чтения журнала ядра, вы можете удалить imklog модуль (который пытается его прочитать)

-module(load="imklog")   # provides kernel logging support
+# module(load="imklog")   # provides kernel logging support

Этот ответ для той же проблемы в Docker предлагает следующую команду, которую можно включить в сценарии

sed -i '/imklog/s/^/#/' /etc/rsyslog.conf

Чтение из /proc/kmsg требуются права суперпользователя. Вы запустили rsyslogd как root?

Если да, запустите команду ls -al /proc/kmsg и вставьте сюда вывод.