文章目录

  • 一、shutdown
  • 二、reboot
  • 三、init
  • 四、halt
  • 五、poweroff
  • 六、logout
  • 七、systemctl
  • 八、Alt + PrtSc (SysRq) + REISUB
  • 九、molly-guard
  • (一)molly-gurar 是什么?
  • (二)如何安装 molly guard?


一、shutdown

该命令用于断电或重启本地和远程的Linux 机器

命令

说明

shutdown -h now 或者 shutdown --halt now 或者 shutdown -H now

立即关闭 Linux 机器。它会立刻杀死所有进程,并关闭系统

shutdown --poweroff now或者shutdown -P now

切断电源

shutdown -r now或者 shutdown --reboot

立即重启 Linux 机器。它会立即杀死所有进程并且重新启动系统

shutdown -h -30

30秒后执行关机指令

shutdown -h 30

30分钟后执行关机指令

shutdown -r 20:35

在时间为20:35时候重启

shutdown -r +5 "To activate the latest Kernel"

5分钟后重启,双引号内容是自定义广播消息,所有登录用户看到此广播内容

shutdown -c

取消按预定时间关闭或重启系统的计划

注意:如果您没有使用时间选项运行上面的命令,它将会在一分钟后执行给出的命令。

二、reboot

该命令用于关闭和重启本地或远程设备

命令

说明

reboot

重启机器

reboot -p 或者 reboot --poweroff

关闭 Linux 机器电源

reboot -f 或者reboot --force

强制重启 Linux 设备(这类似按压机器上的电源键)

三、init

init(“initialization” 的简写)是系统启动的第一个进程。
它将会检查 /etc/inittab 文件并决定 linux 运行级别。同时,允许用户在 Linux 设备上执行关机或重启操作,这里存在从 0 到 6 的七个运行等级。

命令

说明

init 0

0等级表示关闭系统

init 6

6等级表示重启系统

四、halt

该命令用来切断电源或关闭远程 Linux 机器或本地主机。 中断所有进程并关闭 cpu。

命令

说明

halt

关闭系统

五、poweroff

该命令用来切断电源或关闭远程 Linux 机器或本地主机。 poweroff 很像 halt,但是它可以关闭设备硬件(灯和其他 PC 上的其它东西)。它会给主板发送 ACPI 指令,然后信号发送到电源,切断电源。

命令

说明

poweroff

关闭设备

六、logout

该指令让用户退出系统,其功能和login指令相互对应。

[root@runoob.com ~]# logout

七、systemctl

以 Systemd 作为 init 系统的 Linux,可以使用命令 systemctl 来管理系统

# 重启系统
[root@runoob.com ~]# systemctl reboot

# 关闭系统,切断电源
[root@runoob.com ~]# systemctl poweroff

# systemctl poweroff 相当于下面这个命令
[root@runoob.com ~]# systemctl isolate poweroff.target

# CPU停止工作
[root@runoob.com ~]# systemctl halt

# 暂停系统
[root@runoob.com ~]# systemctl suspend

# 让系统进入休眠状态
[root@runoob.com ~]# systemctl hibernate

# 让系统进入交互式休眠状态
[root@runoob.com ~]# systemctl hybrid-sleep

# 让系统进入救援状态(单用户状态)
[root@runoob.com ~]# systemctl rescue

八、Alt + PrtSc (SysRq) + REISUB

当系统运行正常时,可以使用上面的所有命令,但是系统处于崩溃或者死机的状态时,上面的命令可能就不适用了,此时就需要使用键盘组合键来强行重启。

在 Linux 系统中,通常键盘组合键 Alt + Print Screen + B 可以重新启动系统,如果这样也不起作用则可以使用组合键 REISUB 强行关机。

REISUB 是取自以下词语的缩略语:

  1. unraw:将键盘控制从 X Server 那里抢回来
  2. terminate:发送终止信号 SIGTERM 给除了 init 以外的所有进程,以便正常终止。
  3. kill:发送信号 SIGKILL 给所有的进程,强制关闭所有进程。
  4. sync:同步所有挂载的文件系统,即将数据刷新到磁盘。
  5. unmount:重新挂载所有的文件系统为只读,即将所有分区挂载为只读模式。
  6. reboot:重启。

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

PrtSc/SysRq 介绍:
键盘上的 PrtSc/SysRq 键或者 Print Screen SysRq 键,现在大多数键盘标为 Print Screen 键,一般情况下,大家都称其为屏幕截图键,按下该键后,对当前屏幕进行截图,就是整个显示屏的内容。按下 Alt + PrtSc/SysRq,则是对当前窗口进行截图。如你打开“我的电脑”后,用此法就截取“我的电脑”窗口的内容。然后进入画图或其他软件(例如:QQ、Word等)中,按下 Ctrl+V 就可以将刚才捕捉的画面粘贴显示出来。

备注:PrtSc/SysRq 是 Print Screen(屏幕截图键)与 SysRq 的组合键,PrtSc 是 Print Screen 的缩写。

九、molly-guard

为了避免输错命令,导致错误重启或者关闭系统,你可以使用 molly-guard 保护你的 Linux/Unix 机器不会被错误地关机/重启。

(一)molly-gurar 是什么?

它在 Debian/Ubuntu 中的包描述为:

这个包会安装一个 shell 脚本来屏蔽现有的 shutdown/reboot/halt/poweroff/coldreboot/pm-hibernate/pm-suspend* 命令。 molly-gurad 会首先运行一系列的脚本,只有在所有的脚本都返回成功的条件下, 才会调用真正的命令。 其中一个脚本会检查是否存在 SSH 会话。 如果是通过 SSH 会话调用的命令, shell 脚本会提示你输入相关闭主机的名称。 这应该足够防止你发生意外的关机或重启了。

(二)如何安装 molly guard?

使用 apt-get 命令 或者 apt 命令来搜索并安装 molly-guard:

$ apt search molly-guard
$ sudo apt-get install molly-guard