Понимание системного логирования является фундаментальной частью изучения того, как изучать Linux. Службы, ядро и демоны в вашей системе постоянно активны. Эта активность записывается и сохраняется в вашей системе в файлах, называемых журналами (логами), создавая удобочитаемый отчет обо всех важных системных событиях.
Что такое системные журналы
Системные журналы необходимы для мониторинга состояния системы, устранения неполадок и аудита безопасности. Эти данные обычно хранятся в каталоге /var, который предназначен для переменных данных, таких как журналы. Изучение этих файлов — важный шаг для тех, кто ищет лучший способ освоить командную строку Linux.
Роль Syslog и Rsyslogd
Но как собираются эти сообщения? Основная служба под названием syslog отвечает за сбор этой информации и направление ее в системный регистратор (логгер).
Протокол syslog включает несколько компонентов. Одним из наиболее важных является демон с именем syslogd (или rsyslogd в большинстве современных дистрибутивов Linux). Этот демон работает в фоновом режиме, ожидая сообщений о событиях. Затем он фильтрует эти сообщения и, основываясь на своей конфигурации, отправляет их в файл, отображает на консоли или отбрасывает. Освоение этих концепций — часть лучшего способа изучения Linux.
Поиск и чтение файлов журналов
Хотя системный регистратор предоставляет централизованный механизм, он не является единственным источником журналов. Многие приложения реализуют свои собственные правила ведения журнала и генерируют отдельные файлы журналов. Однако стандартная запись в журнале обычно включает временную метку, имя хоста, процесс, сгенерировавший сообщение, и детали события.
Вот пример строки из типичного файла syslog:
pete@icebox:~$ less /var/log/syslog
Jan 27 07:41:32 icebox anacron[4650]: Job `cron.weekly' started
Эта запись показывает, что 27 января в 07:41:32 служба anacron на хосте icebox запустила задание cron.weekly. Вы можете просмотреть сообщения событий, собранные системным регистратором, изучив такие файлы, как /var/log/syslog или /var/log/messages.