Linux shutdown命令可以用来进行关机程序,并且在关机以前传送讯息给所有使用者正在执行的程序,shutdown 也可以用来重开机。
使用权限:系统管理者。
语法
shutdown [-t seconds] [-rkhncfF] time [message]
参数说明:
- -t seconds : 设定在几秒钟之后进行关机程序。
- -k : 并不会真的关机,只是将警告讯息传送给所有使用者。
- -r : 关机后重新开机。
- -h : 关机后停机。
- -n : 不采用正常程序来关机,用强迫的方式杀掉所有执行中的程序后自行关机。
- -c : 取消目前已经进行中的关机动作。
- -f : 关机时,不做 fcsk 动作(检查 Linux 档系统)。
- -F : 关机时,强迫进行 fsck 动作。
- time : 设定关机的时间。
- message : 传送给所有使用者的警告讯息。
实例
立即关机
# shutdown -h now
指定 10 分钟后关机
# shutdown -h 10
重新启动计算机
# shutdown -r now
命令语法:
/sbin/shutdown [-t sec] [-arkhncfFHP] time [warning-message]
命令参数:
参数 | 长参数 | 描叙 |
-a |
| Use /etc/shutdown.allow. |
-c |
| 中断关机:当执行"shutdown -h 12:00"指令时,只要按+键就可以中断关机的指令 |
-f |
| 重新启动时不进行磁盘检测(fsck) |
-F |
| 重新启动时进行磁盘检测(fsck) |
-h |
| 关闭电源 |
-k |
| 模拟关机(不是真的关机),只是向登录者发送警告信息出去! |
-n |
| 不调用init进程进行关机,而是强行关机 |
-r |
| 关闭系统然后重新启动,类似于Windows平台restart |
-t |
| 延迟关机的时间 |
-w |
| 仅做测试,并不真的将系统重新开机,只会把重开机的数据写入/var/log目录下的wtmp记录文件 |
| --help | 显示命令在线帮助 |
示例:
1:马上关闭Linux系统,其中 now 相当于时间为 0 的状态示例:
[root@db-server ~]# shutdown -h now
2:系统2分钟后重新启动,其中+m表示几分钟后关机或开机。
[root@db-server ~]# shutdown -r +2
3:设置系统在那个时间点关机
[root@db-server ~]# shutdown -h 12:30
或后台执行
[root@db-server ~]# shutdown -h 12:30 &
最好是使用命令&将关机命令至于后台处理。不影响当前其它操作。
设置多久时间后执行shutdown命令。时间参数有hh:mm或+m两种模式。hh:mm格式表示在几点几分执行shutdown命令。例如 “shutdown 10:45”表示将在10:45执行shutdown.+m表示m分钟后执行shutdown.比较特别的用法是以now表示立即执行shutdown. 值得注意的是这部分参数不能省略。另外,需要注意如果现在已经22:30,你执行了shutdown -h 22:00 & 那么第二天才会关机。
4:查看后台是否执行shutdown命令
[root@db-server ~]# jobs
[1]+ Running shutdown -h 08:00 &
5:取消shutdown命令执行
执行了下面命令让Linux在12:30关机,但是如果发现这个时间点不合适,那么可以使用CTRL+C取消。
[root@db-server ~]# shutdown -h 12:30
Shutdown cancelled.
[root@db-server ~]#
也可以在另外一个命令窗口执行下面命令
[root@db-server ~]# shutdown -c
6:向所有登录的用户发出信息
[root@db-server ~]# shutdown -k "now"
Broadcast message from root (pts/2) (Sat Jan 10 20:09:14 2015):
The system is going down to maintenance mode NOW!
Shutdown cancelled.
另外登录的会话窗口会收到如下信息
[root@db-server ~]#
[root@db-server ~]#
Broadcast message from root (pts/2) (Sat Jan 10 20:11:34 2015):
The system is going down to maintenance mode NOW!
一般使用下面语法,如下所示
[root@db-server ~]# shutdown -k now "The Server will shutdown now
Broadcast message from root (pts/1) (Sat Jan 10 20:14:54 2015):
The Server will shutdown now
The system is going down to maintenance mode NOW!
Shutdown cancelled.
7:重新启动时不进行磁盘检测
[root@db-server ~]# shutdown -fr now
Broadcast message from root (pts/1) (Sat Jan 10 20:23:59 2015):
The system is going down for reboot NOW!
8:在多少秒后关闭系统并给用户发送提示信息
[root@db-server ~]# shutdown -t 10 -h now "System will shutdown 10 sencond later"
Broadcast message from root (pts/1) (Sat Jan 10 20:33:36 2015):
System will shutdown 10 sencond later
The system is going down for system halt NOW!