如何在 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 是在最近的shutdowns 上“取消关机”。

该语法还支持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 上取消关机? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

server 2003 取消“已经在未计划的关机后重启”

如何让Win10在重启关机或注销时自动关闭应用程序

如何从 Windows 服务 C# 取消关机

Windows定时关机windows实现定时关机与取消

LINUX如何关机

Linux 系统关机重启命令