Linux中“ shutdown -h”“ HALT”与“ shutdown”有何不同

时间:2018-09-08 12:36:42

标签: linux

假设我的Linux系统中正在运行20个进程/ deqamons, 与关机相比,HALT对我的过程/重做的影响有多大

2 个答案:

答案 0 :(得分:0)

通常,人们使用shutdown command。它允许在关机或重新引导之前有时间延迟和警告消息,这对于多用户外壳服务器的系统管理很重要;它可以为用户提前通知停机时间。

因此,必须像这样使用shutdown命令才能立即停止/关闭计算机(至少在Linux和FreeBSD上):

shutdown -h now

或者使用30分钟的自定义提前警告来重新启动它:

shutdown -r +30 "Planned software upgrades"

在延迟之后,关闭命令init更改为运行级别0(停止)或6(重新引导)。 (请注意,省略-h或-r将导致系统进入单用户模式(运行级别1),这将杀死大多数系统进程,但实际上并未暂停系统;它仍然允许管理员以root用户身份登录。 )

一旦系统进程被杀死并且文件系统被卸载,系统将停止/关闭电源或自动重新启动。这是通过halt或重新启动命令完成的,该命令将更改同步到磁盘,然后执行实际的暂停/关机或重新启动。

在Linux上,如果在系统尚未启动关闭进程时运行了暂停或重新引导,它将自动调用shutdown命令,而不是直接执行其预期的操作。但是,在FreeBSD之类的系统上,这些命令首先将操作记录在wtmp中,然后立即自行执行暂停/重启操作,而无需先终止进程或卸载文件系统。

答案 1 :(得分:0)

在POSIX系统上,shutdown命令切换运行级别,并执行适当的脚本。

在FreeBSD上,“停止”命令是ACPI事情...

如果您有特殊的疑问或想了解一般文档无法轻松解决的问题,请随时完善您的查询。