在 Linux 上,与所有任务一样,关机和重启操作也可以从命令行完成。
当Linux服务器没有 gui 界面时,使用命令行很管用,本文介绍的几个命令适合centos、ubuntu、debian、fedora 或 suse等 linux 系统。让我们直接开始介绍!
1、shutdown
shutdown可用于关闭系统或重新启动系统,会以安全的方式关闭,所有登录的用户都会收到系统即将关闭的通知,并在 TIME 的最后五分钟内阻止新登录。
语法:
shutdown [OPTION] [TIME] [MESSAGE]
关闭linux
要关闭机器,请像这样调用 shutdown 命令
# shutdown -h now
h 选项用于halt,表示停止,第二个参数是时间参数,“now”表示立即关闭系统。
时间参数也可以以分钟或小时为单位指定。例如
# shutdown -h +5 “服务器正在关闭以进行升级,请保存您的工作。”
上述命令应将消息闪烁给所有其他登录用户,并在系统关闭前给他们 5 分钟。
重启linux
shutdown 命令可用于使用 r 选项而不是 h 选项重新启动系统,使用方法和之前一样,只需将 h 选项替换为 r 选项即可。
# shutdown -r +5 "服务器将在 5 分钟后重启。请保存您的工作。"
所有其他登录用户将在他们的终端中看到这样的广播消息:
[root@dhcppc1 ~]#
Broadcast message from root@dhcppc1
(/dev/tty1) at 21:35 ...
The system is going down for reboot in 5 minutes!
Server will restart in 5 minutes. Please save your work.
此时可以通过使用“c”选项调用 shutdown 来取消关闭。
# shutdown -c
2、reboot
下一个命令是reboot命令,它也可以用来关闭或重启 linux。
关闭 linux
以下命令将关闭 linux:
# reboot -p
“p”选项代表关机。
重启linux
要重新启动 linux,只需直接调用 reboot 命令,无需任何选项。
# reboot
这将执行正常关机并重新启动机器,当您从菜单中单击重新启动时会发生这种情况。
强制重启linux
以下命令将强制重启机器。这类似于按下 CPU 的电源按钮。不会发生关机,系统将立即重置。
# reboot -f
man命令解释如下:
当使用 –force 调用或处于运行级别 0 或 6 时,此工具调用 reboot(2) 系统调用本身(传递了 REBOOTCOMMAND 参数)并直接重新启动系统,否则,这只是使用适当的参数调用 shutdown(8) 工具,而不传递 REBOOTCOMMAND 参数。
3、halt
下一个命令是halt命令,这可以关闭系统:
# halt
halt 命令也有一个 force 选项,一般不使用,因为它表示立即关闭系统,但它的行为可能不一致,桌面可能会在运行此命令时挂起。
4、poweroff
还有一个命令与 halt 命令完全相同,并采用了相同的选项。
# poweroff
5、组合键
当您控制系统时,可以使用上面显示的命令,如果系统挂起并且根本没有响应怎么办?而且您不想按下 CPU 上的电源按钮,因为这可能会导致数据损坏,为了避免这种情况,神奇的 sysRQ 键出现了。
一个特殊的按键组合,可以让你重新启动你的 linux 系统,不管它挂了多少。
神奇的 SysRq 密钥的一个常见用途是对已锁定的 Linux 计算机执行安全重启。这可以防止在重新启动时需要 fsck,并使某些程序有机会保存未保存工作的紧急备份。
警告:按以下键会立即重新启动您的系统,它类似于按下 CPU 的电源按钮或执行 reboot -f 命令。
ALT + PrintScreen + B
现在我们必须首先使用 REISU 字母代替 B 键,每个键执行如下所述的任务
unRaw (take control of keyboard back from X),
tErminate (send SIGTERM to all processes, allowing them to terminate gracefully),
kIll (send SIGKILL to all processes, forcing them to terminate immediately),
Sync (flush data to disk),
Unmount (remount all filesystems read-only),
reBoot.
- 按住 Alt 和 SysRq(打印屏幕)键。
- 在按住这些键的同时,按顺序键入以下键,间隔几秒钟:REISUB
- 计算机应重新启动。
确保每个键之间有一些时间间隔REISUB。
可以通过更改 /proc/sys/kernel/sysrq 的值来控制 sysrq 功能,要检查系统是否启用了 sysrq,请回显该值,它应该是非零的。
$ cat /proc/sys/kernel/sysrq176