小知识:Linux系统出现更换硬件、更改系统配置、死机等情形时机器重启的步骤

不同于桌面系统,作为服务器,我们较少对Linux系统进行系统重启,但在以下情形出现时,我们会对机器进行重启:

  更换硬件

  更改系统配置

  系统僵死,需要重启恢复

  关闭和重启系统方式

  引导系统本质上只能用一种方法,与此不同的是,关闭或重新引导系统有多种方法:

  关闭电源(下电)

  使用shutdown命令

  使用halt、poweroff或reboot命令

  使用telinit改变init运行级别

  关闭电源

  基于以下两点原因,直接对机器下电,并不是一种好的习惯:

  可能导致硬件损坏

  部分数据可能仍在内存,未被写回磁盘,这时下电会丢失数据或造成文件系统损害;

  因而尽量使用其他方式关闭或重新引导系统。

  shutdown命令

  使用shutdown可以挂起(halt)或重启(reboot)系统,使用-h选项指示挂起系统,起到与halt命令相同的作用;使用-r选项指示重启系统,起到与reboot命令相同的作用。

  执行shutdown命令后,系统将向所有登陆用户发送挂起或重启消息。

  执行shutdown –h now后发送挂起消息:

复制代码

代码如下:

  [sql]

  # shutdown -h now]

  Broadcast message from root (tty1) (Thu May 3 10:58:22 2012):

  The system is going down for system halt NOW!

  INIT: Switching to runlevel: 0

  INIT: Sending processes the TERM signal

  执行shutdown –r now后发送重启消息:

复制代码

代码如下:

  [sql]

  # shutdown -r now

  Broadcast message from root (tty1) (Thu May 3 11:18:22 2012):

  The system is going down for system reboot NOW!

  INIT: Switching to runlevel: 6

  INIT: Sending processes the TERM signal

  执行shutdown后,其他用户不能再登入系统,另我们可以指定系统挂起或重启的时间以及说明,如下两例:

  凌晨1::00停机维护:

复制代码

代码如下:

  [sql]

  shutdown –h 1:00 “going down for scheduled maintenance. Expected downtime is 1 hour.”

  指定相对关机时间15分钟后关机:

复制代码

代码如下:

  [sql]   shutdown –h +15 “going down for emergency check.”

  halt和reboot命令

  halt记录关机情况,终止非必要进程,执行sync系统调用,等待文件系统写操作完成,然后停止内核,poweroff命令等价于halt.

  从以上”shutdown –h”和”shutdown –r”执行输出可知,执行halt即进入运行级别0,执行reboot即进入运行级别6,日志文件/var/log/messages中会记录相应日志。

  系统重启日志:

复制代码

代码如下:

  [sql]   May 3 11:45:25 slot14 shutdown[11119]: shutting down for system reboot

  May 3 11:45:25 slot14 init: Switching to runlevel: 6

  May 3 11:45:25 slot14 user_cmd: 2012-05-03 11:45:25 shutdown -r now by root from [root tty1 May 3 11:44]

系统挂起日志:

复制代码

代码如下:

  [sql]   May 3 10:50:22 slot14 shutdown[11561]: shutting down for system halt

  May 3 10:50:22 slot14 init: Switching to runlevel: 0

  May 3 10:50:22 slot14 user_cmd: 2012-05-03 10:50:22 shutdown -h now by root from [root tty1 May 3 10:48]

    通过查看/var/log/messages日志记录,可判断机器是无端重启还是人为地重启。

    telinit命令

    执行telinit命令可以指引init进入指定的运行级别,如重启系统:

复制代码

代码如下:

    [sql]

  #telinit 6

    使用telinit时,不会得到像执行shutdown那样友好的警告信息,较少用作挂起和重启命令,不过进行/etc/inittab文件的修改服务器,重启系统是比较大的动作。当操作系统相关故障发生时,我们应先考虑收集日志信息,必要时再进行系统重启。谢谢阅读,希望能帮到大家,请继续关注服务器之家,我们会努力分享更多优秀的文章。

声明: 猿站网有关资源均来自网络搜集与网友提供,任何涉及商业盈利目的的均不得使用,否则产生的一切后果将由您自己承担! 本平台资源仅供个人学习交流、测试使用 所有内容请在下载后24小时内删除,制止非法恶意传播,不对任何下载或转载者造成的危害负任何法律责任!也请大家支持、购置正版! 。本站一律禁止以任何方式发布或转载任何违法的相关信息访客发现请向站长举报,会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。本网站的资源部分来源于网络,如有侵权烦请发送邮件至:2697268773@qq.com进行处理。
建站知识

小知识:Linux的重启命令有哪些? 五个Linux的重启命令的具体使用说明

2023-6-13 7:59:05

建站知识

小知识:解决VMware下64位linux系统不支持全虚拟化的办法

2023-6-13 8:15:53

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索