У меня есть служба (написанная мной), работающая на сервере Debian (Jessie), и собственные журналы службы указывают, что она была перезапущена в определенное время. Нет никаких признаков сегфоута или другого сбоя, поэтому я сейчас пытаюсь выяснить, произошло ли какое- либо молчаливое завершение приложения и вызван ли он systemd, или же пользователь намеренно перезапустил сервис через него systemctl
.
История оболочки не показывает такую активность, но это не является окончательным из-за export HISTCONTROL=ignoreboth
и потому, что сеанс SSH мог просто истечь, что препятствовало записи истории bash предыдущего входа в систему на диск. Сервер не был перезагружен в то время.
Но я ожидаю, что сама systemd должна вести журнал, указывающий, когда служба была преднамеренно перезапущена. К моему удивлению, я не смог найти никакой документации (например, для journalctl
), как получить такие журналы.
Некоторые другие сообщения (например, Где / почему нет журнала для обычных пользовательских системных служб? ), Похоже, указывают, что должны быть сообщения журнала, подобные этому:
Jan 15 19:28:08 qbd-x230-suse.site systemd[1]: Starting chatty.service...
Jan 15 19:28:08 qbd-x230-suse.site systemd[1]: Started chatty.service.
Но я не вижу таких сообщений журнала в моей системе.
Есть ли способ узнать, когда системные службы были запущены, остановлены или перезапущены?
Редактировать : Кажется, типичная проблема, с которой люди могут столкнуться, заключается в том, что они работают journalctl
как непривилегированный пользователь. Это не так для меня, я работал root
все время. В ответ на комментарий, бег grep systemd /var/log/syslog
дает мне только это:
Jun 6 09:28:35 server systemd[22057]: Starting Paths.
Jun 6 09:28:35 server systemd[22057]: Reached target Paths.
Jun 6 09:28:35 server systemd[22057]: Starting Timers.
Jun 6 09:28:35 server systemd[22057]: Reached target Timers.
Jun 6 09:28:35 server systemd[22057]: Starting Sockets.
Jun 6 09:28:35 server systemd[22057]: Reached target Sockets.
Jun 6 09:28:35 server systemd[22057]: Starting Basic System.
Jun 6 09:28:35 server systemd[22057]: Reached target Basic System.
Jun 6 09:28:35 server systemd[22057]: Starting Default.
Jun 6 09:28:35 server systemd[22057]: Reached target Default.
Jun 6 09:28:35 server systemd[22057]: Startup finished in 59ms.
Jun 6 09:37:08 server systemd[1]: Reexecuting.
Stopped target Default
и Starting Shutdown
т. Д. Ничего не указывает на отдельные услуги. Может быть, это просто проблема конфигурации? Заметьте, я в Debian Jessie в данном конкретном случае.
/etc/systemd/journald.conf
не переопределили MaxLevelStore
или MaxLevelSyslog
, и посмотрите во всех других местах, где вы можете настроить journald, как указано в man journald.conf
.
/etc/systemd
, по существу пусты (закомментированы все опции, включая те, что вы упомянули).
grep systemd /var/log/syslog