萬盛學電腦網

 萬盛學電腦網 >> Linux教程 >> Linux系統中不同情況的重啟命令如何使用

Linux系統中不同情況的重啟命令如何使用

  在進行Linux系統操作的時候,如果出現更換硬件、更改系統配置及死機等情況時,就需要對電腦進行重啟,而不同的情形重啟的方式也不同,即使用的命令不同,下面小編就給大家介紹下Linux下不同情形的重啟方法。

 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文件的修改服務器,重啟系統是比較大的動作。當操作系統相關故障發生時,我們應先考慮收集日志信息,必要時再進行系統重啟。

  上面就是Linux下遇到不同情形的不同重啟方法的介紹了,重啟的命令有好多種,要應用最恰當的命令來重啟機器,以防機器出錯。

copyright © 萬盛學電腦網 all rights reserved