如何使用命令行重新启动或者关闭Linux
想要重新开始吗?本教程将向我们展示如何从命令行干净安全地重新引导或者关闭Linux或者macOS计算机。
有时我们只需要重新启动或者完全关闭即可。如果我们正在使用不带GUI的服务器,或者正在与远程计算机进行SSH会话,则命令行是唯一的选择。类似macOS之类的Linux和Unix之类的系统提供了几个命令,可以从命令行直接关闭或者重新引导系统。
我们可以使用的命令是:
shutdown
reboot
halt
poweroff
浏览手册页中的这些命令可能会造成混淆。根据我们选择的命令行选项,所有这些命令都可以执行关机,重新引导和系统暂停。实际上," reboot"," halt"和" poweroff"的手册页包含完全相同的信息。
使用关机shutdown
关闭或者重新启动多用户系统意味着我们必须提前计划,我们需要确定何时要进行关闭或者重新启动,并警告其他系统用户即将关闭以及何时关闭。我们自己的计算机,而且是唯一使用它的计算机,生活会变得更加简单。
要运行这些命令中的任何一个,我们必须位于sudo组中。也就是说,我们必须具有超级用户权限,并且能够使用sudo命令。如果我们发出的命令将立即生效并且不会影响其他已登录用户,则无需使用sudo。如果尝试使用以下命令之一而命令被拒绝,请重新尝试sudo
默认情况下," shutdown"命令确保所有进程都干净地停止,所有文件系统都已同步,并且所有CPU活动都已停止。这是停顿状态。然后,它将消息发送到硬件以切断电源。当然,这是关机或者关机状态。
通常会向Shutdown传递一些参数,例如时间字符串和一条消息,这些消息将发送给已登录的用户以警告他们关闭。让我们安排从现在开始关闭15分钟。输入" shutdown",一个空格," + 15",一个空格,然后输入要发送给用户的消息。
shutdown +15 Shutting down in 15 minutes!
我们使用的时间字符串是" +15",表示从现在开始15分钟。 " +"是可选的。我们可以输入" 15"。
我们得到一个确认已计划关闭以及何时关闭的响应。登录的用户将收到我们提供的消息。
要取消关闭,请使用-c
(取消)选项。
shutdown -c
尽管我们没有收到任何有关取消关机的通知,但已登录的用户确实会收到通知。
如果我们不提供时间字符串,那么将安排从现在开始关闭一分钟。请注意,如果未指定时间字符串,则无法向登录的用户提供消息。
shutdown
如果我们什至不能等待一分钟,则可以使用" now"作为时间字符串,关闭会立即生效。使用" now"就像使用" +0"。
时间字符串可以是设置的时间,例如23:00。它必须遵循" HH:MM"的格式,并且必须采用24小时制。在系统关闭前5分钟,系统将阻止新的登录。
我们知道"关机"的默认操作会使计算机进入暂停状态,然后进入关机状态。我们可以通过向其传递其他命令行选项来覆盖此行为。
-H(暂停)选项将使计算机进入暂停状态,但不会要求硬件关闭电源。
-P(poweroff)是默认操作。使计算机进入暂停状态,然后关闭电源。
-r(重新引导)选项将使计算机进入暂停状态,然后重新启动。
-h(停止并关闭电源)选项与-P相同。如果同时使用-h和-H,则-H选项优先。
-c(取消)选项将取消所有计划的关机,停止或者重新启动。
这是我们计划重新启动的示例。
shutdown -r 08:20 System rebooting at 08:20
重启,停止和关机命令
这些命令执行其名称建议的操作。但是,它们每个都将接受命令行选项,以使它们中的任何一个执行重新引导,停止或者关闭电源。但是为什么要混淆呢?这些命令最适合以面值使用。
如果要立即重启,请使用reboot
。如果要立即关闭电源,请使用poweroff
;如果要立即关闭系统,请使用halt
。
reboot
halt
poweroff
这些命令立即生效。如果这些命令中的任何一个被拒绝,请在它们前面加上sudo。但是请注意,拒绝通常是因为有其他用户登录到我们要脱机的系统中。