В течение многих лет система ядра и журналы обрабатывались утилитой syslogd. Большинство операционных систем на базе Linux перешли на systemd, которая поставляется с другим журналом регистрации, journald. Для взаимодействия с этими журналами вы можете использовать утилиту journalctl.
Разрешить пользователю читать системные журналы
Только пользователи, принадлежащие к группам «adm» или «systemd-journal», могут читать журналы systemd. Такие дистрибутивы, как Ubuntu, уже добавляют вас в качестве пользователя в группу adm.
Откройте эмулятор терминала и введите следующую команду:
groups
Если ты видишь "адм"Или же"системный журналВ выводе вы можете пропустить остальные шаги в этом разделе. В противном случае добавьте себя в группу ».адм».
sudo adduser $USER adm
Вам нужно будет перезапустить сеанс входа в систему, чтобы это изменение (выход и вход) вступило в силу. Если вы не можете этого сделать по разным причинам, используйте эту команду для входа в новую группу без перезапуска графического сеанса.
newgrp adm
Не закрывайте последнее окно. Теперь вы являетесь частью группы adm - в рабочем окне терминала, но не в графическом сеансе. Если вы откроете новый Терминал в это время, ваш пользователь больше не будет входить в группу знаний.
Проверить, ведется ли журнал
Системные журналы могут быть статическими или изменчивыми. В Ubuntu и других дистрибутивах он сохраняется по умолчанию. В Debian 9 он является энергозависимым, то есть остается только в памяти (не на диске) и исчезает при выключении или перезапуске. Введите следующую команду.
journalctl --list-boots
Если здесь много записей, вам больше нечего делать. Это означает, что периодические издания хранятся на диске (постоянно). Если вы получите только одну запись, журнал будет нестабильным. Вы должны изменить его на непрерывный.
sudo sed -i '/Storage/ c\Storage=persistent' /etc/systemd/journald.conf
Для просмотра выберите «Любая запись загрузочной записи».
Обычно вам нужно увидеть текущую загрузочную запись. В редких случаях вам может понадобиться просмотреть предыдущую историю, когда что-то пошло не так, например, после сбоя системы.
Чтобы просмотреть историю текущей загрузки:
journalctl -b 0
Для предыдущей загрузки используйте «-1» вместо «0», для двух предыдущих загрузок используйте «-2» и так далее.
journalctl -b -1
Навигация и поиск в системном реестре
После открытия истории с помощью journalctl вы можете перемещаться по тексту с помощью клавиш со стрелками и клавиш СТРАНИЦА ВВЕРХ или же ЛИСТАТЬ ВНИЗ. Другие полезные клавиши:
> Перейти в конец вывода.
< Перейти к началу вывода.
/ Для поиска строки текста. После нажатия косой черты введите строку, которую вы хотите найти, а затем нажмите Enter. Строка чувствительна к регистру, поэтому NETWORK не найдет строки NETWORK. Поиск начинается с текущей позиции просмотра вниз. Для поиска выше используйте?
n Чтобы найти следующее совпадение в текущем поиске. N находит первое.
q Закройте утилиту journalctl.
Фильтровать записи журнала по приоритету
Иногда вы просто хотите проверить наличие ошибок и игнорировать уведомления и сообщения о состоянии. Каждая запись в журнале имеет приоритет: аварийный, тревожный, критический, ошибка, предупреждение, уведомление и информация. Они перечислены в порядке важности, непредвиденные обстоятельства зарезервированы для наихудших сценариев (система непригодна для использования). Информационные сообщения - это просто информационный текст, сообщающий о состоянии программ, которые работают нормально.
Чтобы отображать только сообщения об ошибках текущей загрузки, введите:
journalctl -b 0 -p err
Если вы хотите видеть ошибки при всех загрузках, просто удалите параметр «-b«:
journalctl -p err
Это символы, которые можно передать параметру »-p«:
- бдительный
- критика
- отлаживать
- Экстрен
- заблуждаться
- info
- уведомление
- предупреждение
Фильтрация записей журнала по пути к исполняемому файлу или модулю Systemd.
Некоторые операции выполняются и управляются так называемыми подразделениями. Systemd. Чтобы просмотреть все журналы, относящиеся к серверу крон , Входить:
journalctl -u cron.service
Вы можете увидеть, какие единицы у вас есть:
systemctl list-dependencies
Вы можете перемещаться по меню с помощью клавиш со стрелками вверх и вниз. Нажмите q из.
Если вы предпочитаете использовать путь к исполняемому файлу программы (двоичному файлу), просто передайте его полный путь в качестве аргумента.
journalctl /usr/sbin/cron
Не забывайте, что вы также можете фильтровать по текущей загрузочной записи, чтобы избавиться от ненужных сообщений.
journalctl -b 0 /usr/sbin/cron
Заключение
Journalctl стремится упростить поиск того, что вы ищете. Если вы хотите узнать больше о дополнительных параметрах, которые вы можете использовать, см. Страницу Каталог команд journalctl.