为什么运行“sudo shutdown now”无法关机?

为什么运行“sudo shutdown now”无法关机?

当我发出以下命令时:

sudo shutdown now

..我新委托的 Ubuntu 14.04 服务器无法关闭。它停止并显示以下消息:

* Stopping System V runlevel compatibility
Give root password for maintenance:
(or type Control-D to continue):

如果我输入 root 密码,机器只会停留在 shell 提示符处。

答案1

传统上,该命令sudo shutdown now将带您进入运行级别 1(恢复模式);Upstart 和 SysV init 都会发生这种情况。要获得所需的结果,即正常关闭计算机,您需要将开关切换-hshutdown

这里要注意的一点是,halt将关闭所有进程,关闭 CPU 并将控制权返回到主板的 ROM 监视器,需要用户按下电源按钮才能关闭电源,而poweroff关闭 CPU 后将简单地关闭电源,从而实现正常关机。

切换将由系统做出决定,尽管在 Ubuntu 中我看到它通常是由机器-h做出的。为了确保这一点,您可以使用切换至计算机。shutdownhaltpoweroffpoweroff-Pshutdownpoweroff

总而言之,以下是可用的命令poweroff不是 halt) 一台电脑:

sudo shutdown -h now
sudo shutdown -P now
sudo poweroff
sudo halt -p
sudo init 0

和命令基本上调用(除了)。poweroff和完全类似。 该命令将带您进入运行级别 0 (haltshutdownpoweroff -fsudo poweroffsudo halt -psudo shutdown -P nowsudo init 0关闭)。

现在如果你想强制关闭,即你不想等待进程正常关闭,该怎么办?在这种情况下,你可以使用:

sudo poweroff -f

这不会使用shutdown。相反,它将调用reboot(2)系统调用(用于重启、关机和停止)立即关闭计算机。

答案2

我很确定正确的命令需要包含“-h”选项(halt)。试试这个:

sudo shutdown -h now

答案3

这是物理机器无法自行关闭的时代遗留下来的。例如,halt 命令sudo halt会终止所有程序并从 RAM 中卸载几乎所有内容,准备好关机。但是,如果你运行sudo halt -p,它将执行所有这些操作,然后向系统发出信号关闭电源,或者在命令的情况下shutdown,我认为你需要-a选项,尽管我个人使用halt

答案4

我一直使用以下方法

sudo shutdown -a now

或关机后立即重新启动

sudo shutdown -r now

查看关机帮助选项,它没有将 -a 列为正确命令,但我早就敢发誓 -a 是中止或类似的东西。无论如何,我一直在使用它,而且这些年来它一直有效,但看起来关机 -h 现在是正确的选项。

相关内容