jie1095的个人空间 https://bbs.21ic.com/?1046242 [收藏] [复制] [RSS]

日志

【转载】reboot与shutdown -r now 区别与联系(又收集了init和halt的小知识) ... ...

已有 412 次阅读2015-1-14 22:28 |系统分类:嵌入式系统| linux, reboot, shutdown -r now, halt, init 0


在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, halt

关机命令:
1、halt   立刻关机
2、poweroff 立刻关机
3、shutdown -h now 立刻关机(root用户使用)
4、shutdown -h 10 10分钟后自动关机

路过

鸡蛋

鲜花

握手

雷人

评论 (0 个评论)