Команда journalctl -u sshd.service возвращает «нет записей»

Команда journalctl -u sshd.service возвращает «нет записей»

В настоящее время я работаю на машине Ubuntu 20.04. Когда я запускаю команду journalctl -u sshd.service, я получаю следующий ответ.

-- Logs begin at Wed 2022-12-21 13:01:52 UTC, end at Fri 2023-03-31 15:10:32 UTC

-- No entries -- .

Но когда я запускаю journalctl -u ssh.service, я получаю записи журнала. Поскольку sshd.serviceи ssh.serviceявляются разными единицами systemd, почему он не выдает никаких записей для journalctl -u sshd.serviceкоманды?

решение1

По крайней мере, в стандартной реализации Ubuntu + OpenSSH, sshd.serviceи ssh.serviceна самом деле это не разные единицы - первая являетсяпсевдонимдля последнего, определенного в [Install]разделе его файла модуля, /lib/systemd/system/ssh.service:

[Install]
WantedBy=multi-user.target
Alias=sshd.service
 

Такие псевдонимы обсуждаются в DESCRIPTIONразделе man systemd.unitи по сути работают путем создания символических ссылок — в данном случае,

$ ls -l /etc/systemd/system/sshd.service 
lrwxrwxrwx 1 root root 31 Feb 16  2022 /etc/systemd/system/sshd.service -> /lib/systemd/system/ssh.service

позволяя вам запускать / останавливать / запрашивать статус службы с systemctlпомощью ssh.service, или sshd.service(или даже просто sshили sshd).

Итак, вы наблюдаете, что, journalctlпо-видимому, эти системные псевдонимы не разрешаются - есть некоторые обсуждения того, почему и следует ли это делать.Проблема № 11846: Journalctl работает с псевдонимом Systemd (в разделе «Установка»)а также связанный с этим вопрос (но не получивший удовлетворительного ответа) на нашем родственном сайте,Как использовать псевдонимы systemd с journalctl?

Связанный контент