10 次中有 1 次,systemd 在重启期间挂起。我不明白原因。我应该看什么/在哪里解决问题?我正在使用 systemd v196 并且无法将其升级到版本 >=198,因为后者需要最新的内核(支持 cgroups),无法根据客户要求进行更新。我想知道是否有合理的方法可以发现这种行为的原因并让systemd无条件重启系统。
请注意,此链接没有帮助:http : //freedesktop.org/wiki/Software/systemd/Debugging/#index2h1
正如你可以在那里读到的:
关机永不结束
如果正常重启或关机等待几分钟后仍然无法完成,则上述创建关机日志的方法无济于事,必须使用其他方法获取日志。对调试启动问题有用的两个选项也可用于关闭问题:
Run Code Online (Sandbox Code Playgroud)use a serial console use a debug shell - not only is it available from early boot, it also stays active until late shutdown.
我正在使用串行控制台,出于某种原因,我什至可以登录,因为 eth 接口已启动或已启动(在重新启动步骤期间断开连接后)。
我看不出原因。
# cat /etc/systemd/system/
basic.target.wants/ getty.target.wants/ multi-user.target.wants/ sysinit.target.wants/
dbus-org.freedesktop.NetworkManager.service local-fs-pre.target.wants/ sockets.target.wants/ syslog.service
display-manager.service local-fs.target.wants/ swap.target
Run Code Online (Sandbox Code Playgroud)
注意 swap.target 。它在那里,但我们根本不使用交换分区。我试图屏蔽交换,但挂起问题仍然存在。控制台的最后一行是:
[OK] Stopped target shutdown.
Run Code Online (Sandbox Code Playgroud)
编辑:正如我所说,我可以通过 ssh 通过 eth 重新登录。
现在我将向您展示两个日志。第一个日志发生在重启/shutdwon 挂起时,而第二个日志发生在重启成功时:
挂起案例,输出总是这样(完整日志):
[ OK ] Stopped Network Time …Run Code Online (Sandbox Code Playgroud)