如何在 Linux 上取消关机? [关闭]
Posted
技术标签:
【中文标题】如何在 Linux 上取消关机? [关闭]【英文标题】:How to cancel shutdown on Linux? [closed] 【发布时间】:2010-10-06 07:04:46 【问题描述】:我熟悉并在 Linux 中使用 shutdown
,通常只是这样做
> shutdown -h now
但是有没有办法阻止关机的发生,比如如果我打算在 10 分钟后关机,然后在 5 分钟后发现我真的不想关机?
【问题讨论】:
【参考方案1】:shutdown -c
是在最近的shutdown
s 上“取消关机”。
该语法还支持shutdown -c <message>
用于公告目的,因此如果其他人使用该机器,这很方便。
【讨论】:
适用于哪个发行版? man.cx/shutdown 没有提到 -c 标志。 但确实如此:linux.die.net/man/8/shutdown 存在于最近的 Debian 上,不知道还有什么。 适用于当前版本的 Redhat 发行版。 昨晚我只是在 Ubuntu 中查找这个;它在他们版本的手册页中......不过,就像我读到的一样,系统关闭了!【参考方案2】:您可以使用ps
来查找关闭进程并中止它,例如使用ps|grep shutdown
。
这个的替代和较少的眼球密集版本:
pkill shutdown
killall shutdown
kill `cat /var/run/shutdown.pid`
【讨论】:
所以pkill shutdown
会起作用吗?
是的。不过,当(且仅当)您的关机支持 -c 时,这似乎不是最理想的。
或者:“killall shutdown”
嗯...我认为 shutdown 只运行了足够长的时间来更改运行级别...他可能在问如何让 init 停止关闭。
@dicroce:如果您开始计划在未来某个时间关闭,就像他在问题中所说的那样,关闭运行(真的挂掉)直到实际关闭的时间。问题是如何在这段时间内阻止它。【参考方案3】:
如果您在shutdown -c
的抽签中迟到一秒,并且已经在控制台上获得 root 权限,那么在 init 更改运行级别后,非常快的 # init 5
将取消关闭。
注意:这个答案现在大部分已经过时了。 init 5
在 systemd 上不是很有用,遗憾的是,现在大多数系统都在使用它。
【讨论】:
【参考方案4】:来自shutdown
的 BSD 系统手册页:
可以取消预定的关机 通过终止关闭进程(a SIGTERM 就足够了)。
【讨论】:
以上是关于如何在 Linux 上取消关机? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章