关闭和重启系统
Linux系统下常用的关闭和重启系统的命令有“shutdown”、“halt”、“reboot”和“init”,每个命令的内部工作过程是不同的。
(1)“shutdown”命令
系统关闭前使用“shutdown”命令,系统会通知所有登陆的用户系统将要关闭,并且“login”指令会被冻结,即新的用户不能再登陆。使用“shutdown”命令后,立即关闭系统或者延迟一定的时间再关闭系统都是可能的,还可以重启。
精确时间的格式是hh:mm,表示小时和分钟,时间段由+ 和分钟数表示。系统执行该命令后会自动进行数据同步的工作。
该命令的一般格式
语 法:shutdown [选项] [时间][警告信息]
参 数:
-c 当执行"shutdown -h 11:50"指令时,只要按ctrl+c键就可以中断关机的指令。
-f 重新启动时不执行fsck(磁盘检测)。
-F 重新启动时执行fsck。
-h 将系统关机,不重新启动。
-k 只是送出信息给所有用户,但不会实际关机。
-n 不调用init程序进行关机,而由shutdown自己进行。
-r 关闭系统之后重新启动。
-t<秒数> 送出警告信息和删除信息之间要延迟多少秒。
[时间] 设置多久时间后执行shutdown指令。
[警告信息] 要传送给所有登入用户的信息。
需要特别说明的是该命令只能由超级用户使用。
例1,系统在十分钟后关机并且马上重新启动
# shutdown –r +10
例2,系统马上关机并且不重新启动
# shutdown –h now
例3 重新启动系统 并发出警告信息
# shutdown -r now “system will be reboot now ”
(2)“halt”命令
使用“halt”命令就是调用“shutdown -h”命令执行关闭系统。
命令语法:
Halt [ 选项 ]
参数:
-n : 在关机前不做将记忆体资料写回硬盘的动作
-w : 并不会真的关机,只是把记录写到 /var/log/wtmp 档案里
-d : 不把记录写到 /var/log/wtmp 档案里(-n 这个参数包含了 -d) -f : 强迫关机,不呼叫 shutdown 这个指令
-i : 在关机之前先把所有网络相关的装置先停止 即关闭所有网络接口
-p : 当关机的时候,顺便做关闭电源(poweroff)的动作
-f:没有调用“Shutdown”而强制关闭系统或重启。
例一:关闭系统
# halt
(3)“reboot”命令
功能说明:重新开机。
语 法:dreboot [-dfinw]
补充说明:执行reboot指令可让系统停止运作,并重新开机。
参 数:
-d 重新开机时不把数据写入记录文件/var/tmp/wtmp。本参数具有"-n"参数的效果。
-f 强制重新开机,不调用shutdown指令的功能。
-i 在重开机之前,先关闭所有网络界面,即关闭所有网络接口。
-n 重开机之前不检查是否有未结束的程序。
-w 仅做测试,并不真的将系统重新开机,只会把重开机的数据写入/var/log目录下的wtmp记录文件。
例一: 写“/var/tmp/wtmp”记录
# reboot -w
(4)“ init ”命令
“init”命令是所有进程的祖先,他的进程号始终为“1”,所以发送“TERM”信号给“init”会终止所有的用户进程和守护进程。
init 命令参数
0 :停止运行 所有进程终止,关闭系统
1 : 单用户模式,勇用于维护系统,只有少数进程运行。
2: 多用户模式,没有启动 NFS服务
3 : 完全多用户模式(标准的运行级),进入linux字符界面
4 : 没有使用
5 : 完整的多用户模式,带有基于X window的图形界面
6 :重新引导计算机 (千万不要把initdefault 设置为6 )
例一:显示当前系统运行级别
# runlevel
例二:切换运行级别
# init 2