| ||||||||||||||||
| ||||||||||||||||
| ||||||||||||||||
Регистрация в системе и учет системных ресурсов
Регистрация системных соsобщений, система syslog Регистрация системных сообщений, система syslog Система syslog в операционных системах семейства UNIX представляет собой полную систему регистрации и управления информацией, которую генерируют ядро системы и системные утилиты. Система syslog очень гибкая. С ее помощью можно сортировать сообщения по их источникам, степени важности, а так же направлять в файлы или на терминалы. Система syslog состоит из трех частей:
Демон syslogd запускается во время начальной загрузки и работает непрерывно. Если вы изменили конфигурационный файл /etc/syslog.conf, нужно перезапустить syslogd, послав ему сигнал HUP (или 1). Сделать это можно, узнав по команде ps -ax pid процесса syslogd, введя затем команду kill. # ps -ax | grep syslogd # kill -1 <pid> Можно поступить проще. В файле /var/run/syslog.pid записан pid процесса syslogd. Поэтому можно дать команду: # kill -1 `cat /var/run/syslog.pid`(здесь используются обратные кавычки). Демон syslogd по этой команде закроет все файлы регистрации, перечитает файл /etc/syslog.conf и запустит регистрацию снова. Конфигурационный файл демона 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. Учет продолжительности соединений Для учета количества времени, которое пользователи проводят в системе, используется команда ac. Эта команда обобщает информацию, которая записывается в файл /var/log/wtmp всякий раз, когда пользователь регистрируется в системе. В файл /var/log/wtmp записывается информация об имени пользователя, номере порта (терминала), времени входа в систему и выхода из нее. Команда ac дает разбивку по пользователям (опция -p) и/или по датам (опция -d), показывает время, проведенное в системе, в часах. # ac -p login connect-hrs bob 23.78 mark 14.24 andre 0.65 root 7.89 ... total 675.47 Можно после опции -p задать имена пользователей. # ac -p bob root login connect-hrs bob 23.78 root 7.89 total 31.67 Результат выполнения команды ac -d # ac -d date connect-hrs May 1 total 63.81 May 2 total 78.36 May 3 total 523.14 May 4 total 759.78 May 5 total 635.24 Видно, что 1 и 2 Мая - выходные J. Опции можно объединить. # ac -dp bob date connect-hrs May 2 total 2.67 May 4 total 6.72 May 5 total 4.29 С помощью команды last можно определить время входа пользователя в систему и выхода из нее. Информация выводится либо по конкретному пользователю, или же по порту (терминалу). Формат команды: last bob (информация по пользователю bob) last ttyv1 (информация по терминалу ttyv1). Вывод этой команды очень понятен, не буду приводить его здесь, оставлю вам для самостоятельного ознакомления. [Назад][Содержание][Вперед] |
|
| ||||||||||||||||
|