База знаний / Серверы• 1 мин
systemd на практике: логи, автозапуск и разбор падений сервисов
Как быстро понять, почему сервис «упал»: journalctl, unit‑файлы, рестарты и health‑checks.
Быстрый старт диагностики
systemctl status service-namejournalctl -u service-name -n 200 --no-pager- Проверить последние рестарты:
systemctl show -p NRestarts service-name
Типовые причины падений
- Не хватает прав/доступа к файлам (user/group, SELinux/AppArmor).
- Порт занят или сервис стартует раньше зависимостей.
- Нехватка памяти (OOM) — проверяйте dmesg и метрики RAM.
- Долгий старт: увеличьте
TimeoutStartSec.
Рекомендованные настройки unit
Restart=on-failure+RestartSec=3- Явные зависимости:
After=network-online.target - Жёсткие лимиты там, где уместно:
MemoryMax,CPUQuota
Шпаргалка команд
systemctl daemon-reload
systemctl restart service-name
journalctl -u service-name --since "1 hour ago" --no-pager
journalctl -xe --no-pager