Systemd зависает при перезагрузке/выключении. Журналы отсутствуют

Systemd зависает при перезагрузке/выключении. Журналы отсутствуют

Как мне выяснить, какая служба тормозит systemd во время завершения работы, если я не могу получить журнал?

Я уже несколько дней пытаюсь выяснить, что заставляет systemd зависать, когда я пытаюсь перезагрузиться или выключиться. Он проходит часть процесса выключения, но так и не завершает его. Эта система находится на машине, доступ к которой осуществляется только через последовательную консоль. Портов Ethernet нет. Единственный доступный для записи диск — это RAM-диск, поэтому просмотр journalctl после перезагрузки бесполезен.

Архитектура — Ubuntu 18.04 на Arm64, и все, что я знаю, это следующее:

[  OK          Stopping Session 3 of user root.
[  OK  ] Stopped target Timers.
[  OK  ] Stopped Daily apt upgrade and clean activities.
[  OK  ] Stopped Daily apt download activities.
[  OK  ] Stopped Daily Cleanup of Temporary Directories.
         Stopping Authorization Manager...
[  OK  ] Stopped Discard unused blocks once a week.
         Stopping Availability of block devices...
[  OK  ] Stopped target Graphical Interface.
         Stopping Disk Manager...
[  OK  ] Stopped target Multi-User System.
         Stopping strongSwan IPsec IKEv1/IKEv2 daemon using ipsec.conf...
         Stopping System Logging Service...
[  OK  ] Stopped target Login Prompts.
         Stopping Getty on tty1...
         Stopping Serial Getty on ttyS0...
         Stopping Unattended Upgrades Shutdown...
         Stopping Dispatcher daemon for systemd-networkd...
         Stopping D-Bus System Message Bus...
         Stopping Chassis Fan Service...
         Stopping Regular background program processing daemon...
         Stopping OpenBSD Secure Shell server...
[  OK  ] Stopped Resets System Activity Data Collector.
         Stopping vsftpd FTP server...
         Stopping Nexcopy Graphical Interface...
[  OK  ] Stopped Nexcopy Gadget Service.
         Stopping LSB: Load kernel image with kexec...
         Stopping LSB: HPA's tftp server...
         Stopping User Manager for UID 0...
[  OK  ] Stopped target Host and Network Name Lookups.
         Stopping Getty on ttyGS0...
[  OK  ] Stopped Message of the Day.
         Stopping Network Name Resolution...
[  OK  ] Stopped Network Name Resolution.
[  OK  ] Stopped System Logging Service.
[  OK  ] Stopped Dispatcher daemon for systemd-networkd.
[  OK  ] Stopped Disk Manager.
[  OK  ] Stopped strongSwan IPsec IKEv1/IKEv2 daemon using ipsec.conf.
[  OK  ] Stopped Regular background program processing daemon.
[  OK  ] Stopped vsftpd FTP server.
[  OK  ] Stopped Unattended Upgrades Shutdown.
[  OK  ] Stopped Serial Getty on ttyS0.
[  OK  ] Stopped Nexcopy Graphical Interface.
[  OK  ] Stopped Getty on tty1.

Что бы ни вызвало зависание, скорее всего, это следующая попытка обслуживания. Как мне определить, что это?

reboot -f работает нормально, поэтому я знаю, что это не проблема с оборудованием.

Можно ли как-то заставить systemd выводить более подробную информацию о службе, которую он пытается остановить?

Я пытался:

systemctl перезагрузка --пробный запуск

Надеюсь, он скажет мне, что он пытался сделать, но, судя по всему, --dry-run игнорируется, поскольку он в любом случае инициировал настоящую процедуру выключения.

Есть ли способ заставить systemd выводить список задач, чтобы я мог видеть, что находится в очереди дальше? Имея только одну последовательную консоль для доступа, я не знаю, что еще я могу попробовать.

Есть ли у кого-нибудь предложения?

Редактировать: Один вопрос, который у меня возник после того, как я посмотрел на это, agan. ttyS0 в этой системе — это консоль и порт, на котором я вошел в систему. Я заметил, что незадолго до того, как сообщения прекратились, getty останавливается на этом порту, и поэтому, по-видимому, я вышел из системы. Может ли остановка getty помешать передаче дальнейших данных? И если да, есть ли способ обойти это?

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