Иллюстрированный самоучитель по Linux Red Hat 7.1

       

Что заносится в журнал


Очень важно понимать различия между журналами системы Linux. Существует два основных типа журналов: системные журналы и журналы приложений. В этом параграфе мы рассматриваем системные журналы, поскольку они есть в любой системе. Что касается журналов приложений, то каждое приложение (программа) может иметь (или не иметь) свой журнал, зависящий от конфигурации этой программы.

В системные журналы, как правило, записываются сообщения и предупреждения ядра системы, в том числе о загрузке модулей, данные от демона sendmail, отслеживающего сообщения, обрабатываемые системой, а также сообщения об успешных или неудачных попытках входа в систему.

Записи в системные журналы заносятся демоном syslogd, запускаемым при загрузке системы. Демон получает сообщения восьми уровней серьезности от различных процессов - ядра, системы электронной почты, пользовательских программ, конфигурированных на использование syslogd, а также аутентификационных программ, наподобие программы входа в систему.

Перечислим уровни серьезности сообщений в порядке возрастания:

debug (отладочные);

info (информационные);

notiсе (извещения);

warning (предупреждения);

err (сообщения об ошибках);

crit (критические);

alert (предостережения);

emerg (аварийные).

По этим уровням, записанным в файле /etc/syslog. conf, демон syslogd определяет, в какие журналы заносить те или иные сведения. Файл



/etc/

syslog. conf содержит множество записей - по одной на строку по два поля, разделенных пробелами, в каждой. Левое поле содержит список источников и уровней сообщений, правое - файл журнала, в который они заносятся.

Пары источник-уровень в левом поле перечисляются через точку с запятой. Источники указаны по именам — например, mail (электронная почта), kern (ядро системы), user (программы пользователей) или auth (аутентификационные программы). Примеры пар источник-уровень:

mail. err: сообщения об ошибках, генерируемые демоном электронной почты;

* . info: все информационные сообщения;


kern. emerg: аварийные сообщения от ядра.



Рассмотрим файл


/ etc / sys log

.


conf,

входящий в дистрибутив Linux Red Hat 7.1.


# Запись всех сообщений ядра" на 'консоль.

# Не записывать больше, чтобы не засорять экран.

# kern.* /dev/console .

# Записывать все (кроме почты) уровня info и выше.

# Не записывать частных аутентификационных рообщений!

*.info;mail.none;news.none;authpriv.none /var/log/messages

# Ограниченный доступ к файлу authpriv.

authpriv.* /var/log/secure

# Запись всех почтовых сообщений в одном месте.

mail.* /var/log/maillog

# Аварийные сообщения рассылаются всем и записываются

# на другой машине.

*. emerg *

# Запись сообщений об ошибках электронной почты и новостей уровня err

# и выше в отдельном файле.

uucp,news.crit /var/log/spooler

# Запись сообщений о загрузке также в файл bopt.log

loca17.* /var/log/boot.log

Первая важная строка этого файла:

*.info;mail.none,news.none;authpriv.none /var/log/messages

В ней указана запись всех информационных сообщений, кроме сообщений от программ электронной почты, групп новостей и аутентификационных программ (обозначенных составляющими

mail .none;news .none; authpriv.none), в файл /var/log/messages. Далее следует строка

authpriv.* /var/log/secure

предписывающая запись всех аутентификационных сообщений в файл /var / log /secure.

В следующей строке указано помещать все сообщения от программ электронной почты в файл/var/log/maillog.

mail.* /var/log/maillog

Наконец, строка

uucp,news.crit /var/log/spooler

указывает, что определенные сообщения, связанные с работой программ электронной почты и новостей, записываются в файл /var /log/spooler.

Вероятно, вы обратили внимание, что сообщения распределяются по разным файлам. Это делается для ограничения объемов журналов, а также для частичной классификации сообщений. Если сваливать в один файл сообщения от всех источников и всех уровней серьезности, разобраться в этом файле будет невозможно.

Стратегию ведения регистрационных журналов можно поменять, изменив файл /etc/syslog. conf и заставив демон syslogd загрузить новые конфигурационные данные командой



#





kill -HUP `cat /var/run/syslogd.pid"


Обратите внимание на применение обратных кавычек, указывающих, что стандартный вывод заключенной в них команды используется как аргумент команды kill -HUP. Флажок -HUP команды kill указывает, что процесс должен заново считать конфигурационные данные без завершения работы.


Содержание раздела