歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux技術 >> Linux系統出現更換硬件、更改系統配置、死機等情形時機器重啟的步驟

Linux系統出現更換硬件、更改系統配置、死機等情形時機器重啟的步驟

日期:2017/3/1 17:56:24   编辑: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文件的修改服務器,重啟系統是比較大的動作。當操作系統相關故障發生時,我們應先考慮收集日志信息,必要時再進行系統重啟。謝謝閱讀,希望能幫到大家,請繼續關注腳本之家,我們會努力分享更多優秀的文章。

Copyright © Linux教程網 All Rights Reserved