> CentOS > CentOS入门 >

CentOS下reboot与shutdown -r now 区别

在linux命令中reboot是重新启动,shutdown -r now是立即停止然后重新启动,都说他们两个是一样的,其实是有一定的区别的。

    shutdown命令可以安全地关闭或重启Linux系统,它在系统关闭之前给系统上的所有登录用户提示一条警告信息。该命令还允许用户指定一个时间参数,可以是一个精确的时间,也可以是从现在开始的一个时间段。

  精确时间的格式是hh:mm,表示小时和分钟,时间段由+ 和分钟数表示。系统执行该命令后会自动进行数据同步的工作。
  该命令的一般格式: shutdown [选项] [时间] [警告信息]
  命令中各选项的含义为:
  - k 并不真正关机而只是发出警告信息给所有用户
  - r 关机后立即重新启动
  - h 关机后不重新启动
  - f 快速关机重启动时跳过fsck
  - n 快速关机不经过init 程序
  - c 取消一个已经运行的shutdown

  需要特别说明的是该命令只能由超级用户使用。
  例1,系统在十分钟后关机并且马上重新启动: # shutdown –r +10
  例2,系统马上关机并且不重新启动:# shutdown –h now
    halt是最简单的关机命令,其实际上是调用shutdown -h命令。halt执行时,杀死应用进程,文件系统写操作完成后就会停止内核。
    halt命令的部分参数如下:
    [-f] 没有调用shutdown而强制关机或重启
    [-i] 关机或重新启动之前,关掉所有的网络接口
    [-p] 关机时调用poweroff,此选项为缺省选项

    reboot的工作过程与halt类似,其作用是重新启动,而halt是关机。其参数也与halt类似。reboot命令重启动系统时是删除所有的进程,而不是平稳地终止它们。因此,使用reboot命令可以快速地关闭系统,但如果还有其它用户在该系统上工作时,就会引起数据的丢失。所以使用reboot命令的场合主要是在单用户模式。
    init是所有进程的祖先,其进程号始终为1。init用于切换系统的运行级别,切换的工作是立即完成的。init 0命令用于立即将系统运行级别切换为0,即关机;init 6命令用于将系统运行级别切换为6,即重新启动
    系统重新启动总结:reboot,init 6,shutdown -r now
    系统关机总结:init 0, shutdown -h now, half
    关机命令:
    1、halt   立刻关机
    2、poweroff 立刻关机
    3、shutdown -h now 立刻关机(root用户使用)
    4、shutdown -h 10 10分钟后自动关机
(责任编辑:IT)