讲述你们不知道Halt关机命令

运维 系统运维
Halt关机命令可以说是这六个关机命令中的老大。在这个命令中跟上不同的参数,可以实现不同的目的。在这个关机命令中,主要有如下七个参数。

本人很喜欢Linux,在工作中也很喜欢总结关于Halt关机命令的经验教训,下面就这个问题来详细说说Halt关机命令解析。学Linux不像学Windows,不仅仅要掌握操作过程,还要明白其中的原理。初学者在学习Linux时可能会面临许多困难,比如不具备或需要加强计算机网络基础知识。

Halt关机命令可以说是这六个关机命令中的老大。在这个命令中跟上不同的参数,可以实现不同的目的。在这个关机命令中,主要有如下七个参数。

如-n参数,它主要用来防止sync系统调用。Linux Halt关机命令系统中有的时候会了提高效率,会把欲写入硬盘的资料先写到 filesystem buffer 中。这个 buffer 是一块内存中的空间。如果欲写入硬盘的资料存于这个buffer中,而系统又突然断电的话,那么资料就会丢失。sync指令会将存于buffer 中的资料强制写入硬盘中。这个功能就好像数据库中的高速缓存一样。

可以先把更改的数据写入到内存的一个高速缓存中。然后等到某个特定的时候再把它写入到硬盘中。这种方式可以提高系统性能。不过有的时候管理员需要禁止系统采取sync指令。如系统管理员用fsck命令修补分区之后,为了防止内核用老版本的超级块覆盖修补过的超级块,在关机时就要采用halt –n这个形式来关机。如此的话,在关机的时候不会用老版本的超级块覆盖修补过的超级块。

如果在halt命令中带了-w参数的话,则并不是真正的重启或者关机。而只是把这个事件记入到wtmp日志文件中。大家都知道,在系统登录时,login登录程序会将一些内容写入到utmp文件中,同时也将其添写到wtmp日志文件中。注销时,init进程将utmp文件中相应的记录擦除,每个字节都填以0。并将一个新的记录添写到wtmp文件中。

在系统重新启动时,以及更改系统时间和日期的前后,都在wtmp文件中添写特殊的记录项。也就是说,wtmp日志文件跟踪各个登录和注销事件,以及其他一些特殊的更改。如果系统管理员并不是要真正的关机,而只是想把某个标记写入到wtmp日志文件中,则可以利用这个halt –w命令来完成这个需求。另外,-d是跟-w相反的参数。如果在关机时加入这个参数的话,则关机时不会往wtmp日志文件中加入内容。

利用这个命令,有时候还可以实现节电功能。如在笔记本电脑中,节电模式通常有四种。一是Doze模式,当设定时间一到,CPU时钟变慢,其他设备照常运作。二是Standby模式,当设定时间一到,硬盘和显示将停止工作,其他设备照常运作。三是Suspend模式,当设定时间一到,除CPU以外的所有设备都将停止工作。四是HDD Power Down模式:当设定时间一到,硬盘停止工作,其他设备照常运作。而在Linux Halt关机命令操作系统下,他支持的时第二种模式,即Standby模式。如果系统管理员运行halt -h命令,则就是高速Linux Halt关机命令操作系统的硬盘处于Standby模式,以节省电。

另外参数-p是这个命令的缺省选项。如果采用这个参数,则这个命令同poweroff命令就完全相同了。其他相关参数大家可以参考系统的帮助文件来了解,这里不多说了。

需要注意的是,使用halt命令的话,有用户的限制。也就是说,系统在解析命令行参数后,会调用geteuid系统进程判断当前用户是否为root用户。如果是的话进行后续的操作;如果为普通用户,halt退出,并且会向用户提示错误信息。

可见halt命令是一个很强大的关机命令。但在某种程度上说其又不是一个Halt关机命令。因为它可以起到很多关机以外的作用。作为系统管理员要根据自己的需要,选择合适的参数。只有如此,才能够把这个关机命令的作用发挥到极致。

【编辑推荐】

  1. 成功完成Linux建立最小根文件的过程
  2. Linux操作系统不再支持安腾处理器
  3. 详解Linux操作系统恢复问题
  4. 轻松地完成Linux刻录CD-ROM数据光盘
  5. 分析深谈安全安装Fedora linux桌面
责任编辑:佚名 来源: CSDN
相关推荐

2018-07-11 15:54:23

趋势互联网投资

2024-03-27 12:35:12

2017-12-15 13:44:22

2016-10-31 21:12:07

软件

2020-06-12 09:20:33

前端Blob字符串

2020-07-28 08:26:34

WebSocket浏览器

2022-10-13 11:48:37

Web共享机制操作系统

2009-12-10 09:37:43

2021-02-01 23:23:39

FiddlerCharlesWeb

2011-09-15 17:10:41

2020-12-21 09:00:04

MySQL缓存SQL

2010-10-13 13:20:04

命令行标志JVM

2022-08-13 09:19:07

Bash命令Linux

2010-08-23 09:20:11

Linux命令

2010-08-23 09:56:09

Java性能监控

2021-07-14 11:25:12

CSSPosition定位

2018-06-20 00:30:06

2011-09-09 14:02:41

linuxscreen

2022-11-04 08:19:18

gRPC框架项目

2020-09-15 08:35:57

TypeScript JavaScript类型
点赞
收藏

51CTO技术栈公众号