从命令行关闭Linux计算机的5种方法

系统 Linux
没有操作系统是没有缺点的。 即使相对稳定,驱动程序和应用程序也可能存在问题。 Linux也不例外。 尽管比Windows更稳定(在许多情况下,并非全部!),但可能还需要重新启动Linux计算机。 这可能是因为某些东西不起作用。 或者,您可能通过SSH连接到远程计算机或服务器,并希望它重新启动或完全关闭。

没有操作系统是没有缺点的。 即使相对稳定,驱动程序和应用程序也可能存在问题。 Linux也不例外。 尽管比Windows更稳定(在许多情况下,并非全部!),但可能还需要重新启动Linux计算机。 这可能是因为某些东西不起作用。 或者,您可能通过SSH连接到远程计算机或服务器,并希望它重新启动或完全关闭。

但是你怎么做呢? 有几个命令可用于通过命令行关闭或重新启动(或重新启动)Linux计算机。

让我们依次研究它们,并研究应该如何以及何时使用这些命令。 

从命令行关闭Linux计算机的5种方法 

1、关机

如果您已经使用了Linux机器,那么简单地关闭它的解决方案就是使用通过SSH发送的关机指令(如果您使用的是Windows PC,那么您有几个SSH工具可供选择)。这可以用来关闭计算机(直到您决定重新启动它)或重新启动。该命令的语法如下:

shutdown [option] [time] [message]

例如,要立即关闭计算机,您将使用:

  1. shutdown -h now 

这里,-h表示暂停,而现在明确表示该指令应立即执行。 可以使用不同的延迟。 例如,您可以使用+9代替,这将告诉计算机在9分钟内运行关机程序。

如果你想包含一条信息,这条信息将会显示给所有已登录的用户: 

  1. linuxidc@linuxidc:~/linuxidc.com$ shutdown -h +9 "服务器正在关闭,请保存您的工作并注销。"  
  2. Shutdown scheduled for Sun 2019-04-28 10:37:30 CST, use 'shutdown -c' to cancel. 

请记住,您可以找到这些命令的开关的完整列表,输入:

  1. [command] --help 

用-r重新启动

另一种选择是使用-r命令重新启动计算机。 这用于代替-h,因此要重新启动计算机或服务器,您可以使用:

  1. linuxidc@linuxidc:~/linuxidc.com$ shutdown -h +3 "服务器将在在3分钟后重新启动, 请保存您的工作并注销。"  
  2. Shutdown scheduled for Sun 2019-04-28 10:49:38 CST, use 'shutdown -c' to cancel. 

可以通过输入shutdown -c命令取消任何计划的关闭或重新启动:

  1. linuxidc@linuxidc:~/linuxidc.com$ shutdown -c 

2、重新启动

由于shutdown命令具有重启选项,因此了解reboot命令有关闭选项也就不足为奇了。

标准的重启命令是:

  1. reboot 

这将提示您的计算机自动关闭,然后再重新打开。然而,如果你想关掉设备,那么-p开关将工作:

  1. reboot -p 

另一种选择是强制重启。如果应用程序或服务正在挂起,而您需要快速重启,这将非常有用:

  1. reboot -f 

这将强制重新启动Linux机器。

3、Halt

我们已经看到了上面的-h开关,但是halt可以单独用作命令。这将导致计算机立即关闭,用一个简单的四个字母单词:

  1. halt 

-f开关也可以用于暂停,但结果不一致,并且可能导致系统稳定性问题。

4、定时关机

您可能更喜欢poweroff命令的术语。这与halt完全相同,只是它需要两倍的输入时间。

但是,除了使用-f强制关机外,还可以使用-w开关将系统重启调用记录到/var/log/wtmp。这是一个潜在有用的调试工具,就像-verbose一样,它可以帮助解决关机问题。

  1. poweroff --verbose 

5、紧急选项:REISUB

当系统运行正常时,可以使用上面的所有命令。但如果它崩溃了呢?如果PC或服务器正在挂起,无法以合适的方式重新启动,该怎么办?

答案就是键盘组合。如果您已从Windows切换,您可能知道Ctrl + Alt + Del会显示一个菜单,其中包含Shutdown作为选项。如果保持更长时间,机器将自动关闭。同时,在Mac上,您只需按住电源按钮(也适用于Windows硬件的选项)。

在Linux中,键盘组合为Alt + Print Screen + B以重新启动。 但是,如果这不起作用,或者存在更复杂的问题,则可以使用最多六个键来更改组合。

这就是所谓的REISUB,是取以下词语的缩略语:

  • unRaw - 从X显示服务器控制键盘。
  • tErminate - 将终止信号SIGTERM发送到所有进程,以便正常终止。
  • kIll - 如上所述,但SIGKILL信号强制立即终止进程。
  • Sync - 将数据刷新到磁盘。
  • Unmount- 这会将所有文件系统重新装入只读状态。
  • reBoot - 正如您所期望的那样。

要使其起作用,您应按下Alt + Print Screen,然后按顺序按下R E I S U B键。 在每个按键之间留一两秒。 请注意,此方法通常不适用于具有ARM体系结构的计算机(例如Raspberry Pi)。

救命,我不小心关闭了我的Linux PC或服务器!

我们已经了解了如何取消关机或重启命令。然而,当一个重要的进程正在运行时,您很容易启动shutdown命令——尤其是在远程服务器上。解决这个问题的一种方法是安装molly-guard,它可以通过检查某些参数来覆盖关机。

例如,有一个脚本检查SSH会话(与FTP不同)。如果您发送重新启动、停止、关机或关机命令,molly-guard将要求您要关闭的主机的名称。

要使用它,请在终端中安装molly-guard:

  1. linuxidc@linuxidc:~/linuxidc.com$ sudo apt-get install molly-guard 

当molly-guard在后台运行时,它将检测诸如poweroff之类的命令,并报告已检测到SSH会话。 然后,您可以选择输入服务器的主机名以确认关闭,或者按Ctrl + C取消。 有用!

从命令行关闭Linux计算机的这五种方法特别有用,因为它们可以在计算机本身上使用,也可以通过远程SSH使用。 由于这些命令非常简洁,因此可以快速使用 - 这可能会导致意外重启! 幸运的是,molly-guard实用程序足以避免这种情况。 

 

责任编辑:庞桂玉 来源: Linux公社
相关推荐

2019-12-11 11:25:48

Linux命令行邮件

2016-12-15 08:30:02

Linux命令

2012-02-08 16:37:36

ibmdw

2020-12-06 08:00:46

scanimage命令行Linux

2018-06-19 16:05:27

LinuxStratis存储

2014-03-04 10:47:52

Linux命令行随机密码

2021-11-08 12:17:09

LinuxLinux命令编辑照片

2019-07-15 05:50:19

Linux命令行VirtualBox版

2014-03-27 14:53:33

随机密码

2022-12-12 09:12:30

2014-10-22 12:03:14

Linux嗅探HTTP

2022-10-20 16:51:44

Linux命令行IP 地址

2020-10-31 08:20:39

curl命令命令行互联网

2023-08-01 13:31:18

模型Alpacaicuna

2021-09-18 09:19:21

Linux

2022-06-30 11:28:14

计算机视觉AI

2020-08-21 07:35:12

Linux命令行计算器

2019-08-27 08:00:10

OpenStack命令虚拟机

2022-06-30 12:19:22

Linux

2015-05-25 10:40:22

Linux命令行技巧
点赞
收藏

51CTO技术栈公众号