1. systemctl - управление сервисами

Что делает - стартует, останавливает, перезапускает и включает автозапуск юнитов.
Полезные команды

Команда Что показывает
systemctl list-units --type=service все запущенные сервисы
systemctl list-units --state=failed только те, что упали
systemctl status <svc> подробный статус, логи и PID
systemctl is-enabled <svc> включён ли автозапуск
`sudo systemctl enable disable `

Эти команды обычно первая точка входа, когда сервис "не работает".

2. journalctl - просмотр журналов

Что делает - читает системный журнал systemd, где каждый сервис пишет свои сообщения.
Кратко о синтаксисе

  • journalctl -u <svc> - логи только этого юнита.
  • journalctl -u <svc> --since "2h ago" - за последние два часа.
  • journalctl -b / -b -1 - текущий и предыдущий загрузочный журнал.
  • -f - "tail -f", живой поток.
  • -xe - подробный вывод ошибок, часто помогает понять, почему сервис не стартует.

3. systemd-analyze - измеряем время загрузки

Что делает - разбирает, сколько времени тратит ядро и пользовательский пространство, а также каждый отдельный сервис.

  • systemd-analyze - общее время boot‑а.
  • systemd-analyze blame - список сервисов с их длительностью (самые "тяжёлые" сверху).
  • systemd-analyze critical-chain - цепочка зависимостей, показывающая, какие юниты блокируют старт.
  • systemd-analyze plot > boot.svg - график в SVG, удобно визуализировать в браузере.

Эти данные позволяют быстро найти "узкое место" в процессе загрузки.

4. coredumpctl - работа с дампами падений

Что делает - собирает и выводит информацию о ядровых дампах, которые systemd сохраняет при краше процесса.

  • coredumpctl list - таблица всех падений.
  • coredumpctl info <PID> - подробный отчёт о конкретном дампе.
  • coredumpctl list <program> - фильтрация по имени процесса.

Если сервис падает без видимых сообщений, эти дампы часто дают стек вызовов и причину сбоя.

Как пользоваться в реальном деле

  1. Проверяете статус подозрительного сервиса через systemctl.
  2. Если он "failed", сразу смотрите его журнал journalctl -u ... -xe.
  3. Если проблема появляется только после перезагрузки, бросаете systemd-analyze blame и ищете долгие юниты.
  4. При частых крашах подключаете coredumpctl и изучаете дампы.

Эти четыре инструмента покрывают почти все типичные сценарии отладки в современных дистрибутивах, где systemd - основной init‑система.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *