Friday, August 18, 2017

Linux中常用的关机和重新启动命令

Linux中常用的关机和重新启动命令有shutdown、halt、reboot以及init,它们都可以达到关机和重新启动的目的,但是每个命令的内部工作过程是不同的,下面将逐一进行介绍。

一、shutdown

shutdown命令用于安全关闭Linux系统。有些用户会使用直接断掉电源的方式来关闭Linux,这是十分危险的。因为Linux与Windows不同,其后台运行着许多进程,所以强制关机可能会导致进程的数据丢失,使系统处于不稳定的状态,甚至会损坏硬件设备。

执 行shutdown命令时,系统会通知所有登录的用户系统将要关闭,并且login指令会被冻结,即新的用户不能再登录系统。使用shutdown命令可 以直接关闭系统,也可以延迟指定的时间再关闭系统,还可以重新启动。延迟指定的时间再关闭系统,可以让用户有时间储存当前正在处理的文件和关闭已经打开的 程序。

shutdown命令的部分参数如下:

[-t] 指定在多长时间之后关闭系统

[-r] 重启系统

[-k] 并不真正关机,只是给每个登录用户发送警告信号

[-h] 关闭系统(halt)

shutdown命令的工作实质是给init程序发送信号(signal),要求其切换系统的运行级别(Runlevel)。系统的运行级别包括:

0:关闭系统

1:单用户模式,如果没有为shutdown命令指定-h或-r参数而直接执行,则默认将切换到此运行级别

2:多用户模式(不支持NFS)

3:多用户模式(支持NFS),一般常用此种运行级别

5:多用户模式(GUI模式)

6:重新启动系统

  
  Shutdown命令可以关闭所有程序,依照用户的需要,重新启动或关机。
  
  参数说明如下:
  
  l 立即关机:-h 参数让系统立即关机。范例如下:
  
  [root@localhost root]#shutdown –h now ← 要求系统立即关机
  
  l 指定关机时间:time参数可指定关机的时间;或设置多久时间后运行shutdown命令,范例如下:
  
  [root@localhost root]#shutdown now ← 立刻关机
  
  [root@localhost root]#shutdown +5 ← 5分钟后关机
  
  [root@localhost root]#shutdown 10:30 ← 在10:30时关机
  
  l 关机后自动重启:-r 参数设置关机后重新启动。范例如下:
  
  [root@localhost root]#shutdown -r now ← 立刻关闭系统并重启
  
  [root@localhost root]#shutdown -r 23:59 ← 指定在23:59时重启动

二、halt

halt是最简单的关机命令,其实际上是调用shutdown -h命令。halt执行时,杀死应用进程,文件系统写操作完成后就会停止内核。

halt命令的部分参数如下:

[-f] 没有调用shutdown而强制关机或重启

[-i] 关机或重新启动之前,关掉所有的网络接口

[-p] 关机时调用poweroff,此选项为缺省选项

三、reboot

  顾名思义,reboot命令是用来重新启动系统的。常用的参数如下:
  
  l -f 参数:不依正常的程序运行关机,直接关闭系统并重新启动计算机。
  
  l -I 参数:在在重新启动之前关闭所有网络接口。
  
  虽然reboot命令有个参数可以使用,但是一般只需要单独运行reboot命令就可以了

reboot的工作过程与halt类似,其作用是重新启动,而halt是关机。其参数也与halt类似。

四、init

init是所有进程的祖先,其进程号始终为1。init用于切换系统的运行级别,切换的工作是立即完成的。init 0命令用于立即将系统运行级别切换为0,即关机;init 6命令用于将系统运行级别切换为6,即重新启动。

五、注销系统的logout命令
  
Logout 注销是登陆的相对操作,登陆系统后,若要离开系统,用户只要直接下达logout命令即可:
  
  [root@localhost root]#logout
  
  Red Hat Linuxrelease 9(Shike)
  
  Kernel 2.4.20.8 on an i686
  
  Login: ← 回到登陆的画面
  

Leave a Reply

Your email address will not be published. Required fields are marked *