9.3. Протоколирование системы

9.3. Протоколирование системы

В любой UNIX-подобной системе есть стандартные файлы протоколов (журналов). В них попадают сообщения, генерируемые ядром, системными демонами, утилитами окружения. Эти файлы размещаются в каталоге /var/log. Прикладные программы обычно помещают свои протоколы в подкаталоги этого каталога, например, /var/log/httpd — журналы HTTP-сервера. Точное расположение журнала прикладной программы зависит от ее настройки.

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

Система регистрации состоит из следующих компонент:

? демон syslogd, принимающий сообщения от других процессов и перенаправляющий их указанным адресатам;

? библиотечные функции openlog(), syslog(), closelog(), посредством которых процессы общаются с демоном syslogd. Функция syslog() записывает протокольное сообщение в гнездо (сокет) /dev/log, откуда его читает демон syslogd;

? команда logger, с помощью которой сообщение демону syslogd может передать командный интерпретатор.

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

$ ps -ef | grep syslogd | grep -v grep

Примечание

Последняя в этом конвейере команда нужна для того, чтобы отфильтровать из вывода команды grep сведения о самой команде grep.

Если ваша система загружается в стиле System V, то сценарий запуска демона — это /etc/rc.d/init.d/syslog. Как обычно, запустить демон самостоятельно вы можете с помощью команды

/etc/rc.d/init.d/syslog start

а остановить — /etc/rc.d/init.d/syslog.stop.

Автоматический запуск системы syslog можно отключить или включить при помощи графического конфигуратора (setup для дистрибутива Red Hal, drakxservices для Mandrake, system-config-services для Fedora Core).

В Red Hat-совместимых дистрибутивах демон syslogd устанавливается из пакета sysklogd, в состав которого входит также демон klogd, принимающий сообщения ядра и отправляющий их на обработку демону syslogd.

Как и всякий демон, syslogd управляется конфигурационным файлом. По умолчанию это файл /etc/syslog.conf, однако ничто не мешает назвать его как угодно, а потом запускать syslogd с ключом -f /path/to/config.file. Об остальных немногочисленных ключах можно узнать но команде man syslogd.

По сигналу HUP демон закрывает все журнальные файлы, перечитывает конфигурационный файл и возобновляет процесс протоколирования. Чтобы изменения в конфигурационном файле вступили в силу, нужно послать демону syslogd сигнал HUP. Например, так:

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

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

5.8.4. Сетевое протоколирование

Из книги Linux-сервер своими руками автора Колисниченко Денис Николаевич

5.8.4. Сетевое протоколирование Сейчас разберемся, как обеспечить протоколирование в сети. Протоколирование в сети — это перенаправление сообщений на демон syslogd, запущенный на другой машине, где они будут записаны на диск.Для передачи сообщений используется протокол UDP.


15.5.4. Протоколирование

Из книги Основы объектно-ориентированного программирования автора Мейер Бертран

15.5.4. Протоколирование Ниже перечислены режимы протоколирования SQUID с указанием соответствующих журналов. Если какой-то журнал вам не нужен, установите none вместо имени файла. cache_access_log /usr/local/squid/logs/access.logПротоколируется каждый запрос к SQUID. Журнал называется


19.7.9. Обработка сигналов и протоколирование

Из книги Windows Script Host для Windows 2000/XP автора Попов Андрей Владимирович

19.7.9. Обработка сигналов и протоколирование Возможно, вы хотите обеспечить выполнение вашего сценария после выхода пользователя из интерпретатора или выполнить какие-нибудь действия при отключении удаленного пользователя от системы. «Перехватить» сигнал (прерывание)


Системы

Из книги Сетевые средства Linux автора Смит Родерик В.

Системы Эта лекция акцентирует внимание на классах - элементах конструкции ОО-ПО. Для получения исполняемого кода классы необходимо скомпоновать в систему.Определение системы вытекает из предшествующего обсуждения. Для построения системы необходимы три вещи:[x].


Протоколирование действий сценариев в журналах событий

Из книги Бесплатные разговоры через Интернет автора Фрузоров Сергей

Протоколирование действий сценариев в журналах событий При использовании WSH имеется возможность вести аудит успехов и отказов для сценариев, т.е. автоматически заносить в журнал событий системы информацию об успешных или неуспешных (с точки зрения безопасности)


Протоколирование работы маршрутизатора

Из книги Linux: Полное руководство автора Колисниченко Денис Николаевич

Протоколирование работы маршрутизатора Опция IP: Verbose Route Monitoring управляет выводом сведений о маршрутизации в файл протокола. В обычных условиях ядро не протоколирует ход маршрутизации пакетов. Если данная опция установлена, регистрируются сведения о пакетах,


Протоколирование хода обработки пакетов

Из книги Фундаментальные алгоритмы и структуры данных в Delphi автора Бакнелл Джулиан М.

Протоколирование хода обработки пакетов Команды и опции iptables, рассмотренные в данной главе, не предполагали протоколирование действий по преобразованию пакетов. Однако в некоторых случаях необходимо иметь информацию о блокированных попытках доступа к важным портам


Протоколирование работы программы-сервера

Из книги Домашний доктор для вашего ПК автора Виноградов Алексей Степанович

Протоколирование работы программы-сервера Все действия программы могут заноситься в протокол, т. е. обычный текстовый файл, который вы сможете потом открыть и просмотреть в текстовом редакторе, например, в Блокноте Windows. Чтобы это стало возможным, в диалоговом окне опций


8.7. Обработка сигналов и протоколирование

Из книги автора

8.7. Обработка сигналов и протоколирование Обычно при завершении сеанса работы пользователя система посылает всем запущенным им процессам сигналы (п.3.3.2), которые приводят к прекращению этих процессов. Возможно, вам понадобится обеспечить своему сценарию возможность


9.3.2. Сетевое протоколирование

Из книги автора

9.3.2. Сетевое протоколирование Протоколы — это история жизни системы; они необходимы администратору для выявления и устранения неполадок, но они необходимы и злоумышленнику — для поиска уязвимости или для того, чтобы скрыть следы своего вторжения. Поэтому иногда бывает


9.3.3. Протоколирование ядра. Демон klogd и команда dmesg

Из книги автора

9.3.3. Протоколирование ядра. Демон klogd и команда dmesg Демон klogd предназначен для перехвата и протоколирования сообщений ядра Linux. Ядро, в отличие от пользовательского процесса, не может выводить сообщения, пользуясь стандартной функцией syslog(): библиотека, содержащая эту


18.5.4. Протоколирование

Из книги автора

18.5.4. Протоколирование Ниже перечислены режимы протоколирования SQUID с указанием соответствующих журналов. Если какой-то журнал вам не нужен, установите none вместо имени файла.? cache_access_log /usr/lосal/squid/logs/aссеss.log — протоколирование запросов к SQUID:? cache_log /usr/local/squid/logs/cache.log —


Протоколирование

Из книги автора

Протоколирование Рассмотрим еще одно средство из арсенала защитного программирования -протоколирование (logging). Под протоколированием здесь понимается вставка дополнительного кода, закрытого директивами компилятора, который записывает в файл состояние или значения


5.3 Мониторинг состояния системы, устранение ошибок, восстановление утерянных файлов и защита данных Анализ состояния аппаратной части системы

Из книги автора

Введение Как и всякая техника, персональный компьютер нуждается в техническом обслуживании, настройке и наладке. Небрежное отношение к своей машине приводит к тому, что работа компьютера становится нестабильной и не эффективной. А потом происходит сбой, и компьютер