如果Linux关闭,但计算机停留在终端中,我仍然可以打印sysRq帮助,但不再输入命令。
有没有什么方法可以避免这种情况并撤消关机,同时规避 Linux 的死罪(称为 reb***ing)?
答案1
您可以通过以下方式取消待处理的关闭:
shutdown -c
但是,这假设初始关闭命令的时间间隔不是“+0”或“现在”。
答案2
shutdown -c
您可以使用或 按Ctrl+来取消关闭C
这似乎是这个问题的重复。 是否可以停止关机命令?
答案3
如果不再有任何进程在运行来处理登录尝试(即getty
在控制台或串行端口,或sshd
类似的网络连接),那么您无能为力。
如果仍有可能为控制台init
提供getty
进程,但控制台的当前持有者由于某种原因已挂起,您可以尝试 Alt-SysRq-k 来终止挂起的进程,并希望init
启动一个新的进程给你一份。但是,如果您在关闭的最后阶段处于这种状态,则可能无济于事,因为init
已经停止了getty
s 并且没有启动任何新的。
说重新启动是“死罪”有点夸张,目的是防止一些 Linux 新用户可能从以前的操作系统继承的坏习惯。一切都有一个时间和地点,包括硬重启。如果您相当确定没有其他选择,那就这样吧:较长的正常运行时间本身通常不是目标,而是严格 SLA 的副作用。如果您有严格的 SLA,您希望快速调查出了什么问题,然后尽一切努力让系统尽快恢复并运行。完成后,您可以深入研究日志和故障转储,尝试找出根本原因,并在可能的情况下防止其再次发生。
我作为企业 Linux/Unix 系统管理员工作了近 20 年。在那段时间里,我看到很多系统都陷入了绝望的困境,唯一的解决办法就是重新启动它们。有时原因是硬件损坏;有时是硬件损坏。其他时候,有内存泄漏的应用程序,或者当数据库连接不可用时,应用程序就像分叉炸弹一样(错误处理代码中的一个小错误:-/)。