Конфигурационный файл демона syslogd
Действиями демона syslogd управляет файл конфигурации /etc/syslog.conf. Это простой текстовый файл, в котором пустые строки и строки со знаком # в первой позиции игнорируются. Формат файла следующий: <селектор> <действие>.
Например, mail.err /var/log/mail.errors
Эта строка обеспечит запись всех ошибок, связанных с доставкой почты в файл /var/log/mail.errors.
Важно: В качестве разделителя между селектором и действием используйте только клавишу <Tab>. Использование пробелов будет ошибкой, которую не так-то легко обнаружить.
Как вы уже заметили, селектор записывается в составном виде. В общем виде это выглядит, как средство.уровень
К тому же в поле <селектор> может содержаться один или несколько селекторов, разделенных точкой с запятой. Селектор может содержать группу средств, разделенных запятыми. Селектор может содержать символы * и none, которые означают соответственно "все" и "ничего".
Примеры селекторов:
средство.уровень действие
средство1,средство2.уровень действие
средство1.уровень1;средство2.уровень2 действие
*.уровень действие
*.уровень;средство.none действие
Ниже в таблицах перечислены основные имена средств и уровней серьезности системы syslog.
Средство Программы, использующие его
kern Ядро системы
user Пользовательские процессы
mail Система электронной почты
daemon Системные демоны
auth Системы защиты и полномочий
lpr Система печати
news Система телеконференций
cron Демон cron
local0-7 Восемь уровней локального сообщения
syslog Внутренние сообщения системы syslog
ftp Демон ftpd
* Все вышеперечисленные средства
Уровень Значение уровня
emerg Экстренные ситуации
alert Срочные ситуации
crit Критические состояния
err Состояния ошибок
warning Предупреждения
notice Необычные состояния
info Информационные сообщения
debug Отладочная информация
Уровни перечислены в порядке убывания. Это значит, что уровни обозначают минимальную важность, которую должно иметь сообщение, чтобы быть зарегистрированным в системе syslog.
Поле <действие> указывает, что нужно делать с поступившим сообщением.
Действие Описание
имя_файла Записать сообщение в файл на локальной машине
@ имя_машины Переслать сообщение демону syslogd на указанную машину
@IP_адрес То же, только указан IP-адрем машины
пользователь1, Вывести сообщение на экраны указанных пользователей ...
пользовательN
* Вывести сообщение на экраны всех пользователей
Пример:
*.emerg /dev/console
*.err;auth.notice /dev/console
*.err;auth,mail,user.info /var/log/messages
mail.err /var/log/mail.log
mail.info @192.168.0.1
Говоря о системе syslog, нужно упомянуть о команде logger, которая позволяет вносить записи в системный журнал из shell-сценариев.
Эту команду удобно использовать для проверки изменений, внесенных в файл /etc/syslog.conf.
Например, если вы добавили в файл /etc/syslog.conf строку
local5.warning /var/log/local.log
и хотите проверить, работает ли она, то введите команду
# logger -p local5.warning "Local test"
Посмотрите файл /var/log/local.log. Если строчки "Local test" в нем нет, значит вы скорее всего забыли послать демону syslogd сигнал HUP.