【2016-10-11】Linux系統經常使用的關機或重啓命令shutdown、reboot、halt、poweroff、init 0及init 6的聯繫與區別

Linux下經常使用的關機/重啓命令通常包括:linux

shutdown、reboot、halt、poweroff等,固然了咱們可使用init 運行等級runlevel 0即halt來關機,或使用init 運行等級runlevel 6即reboot來執行重啓。ubuntu

固然了這些關機或重啓的方式也有一些細微差異。spa

首先明確一下linux/redhat系的runlevel運行級別和debian系的runlevel是有所不一樣的。命令行

redhat系的runlevel定義以下:進程

runlevel 0: halt 系統停機狀態,系統默認運行級別不能設爲0,不然不能正常啓動it

runlevel 1: single user 單用戶工做狀態,root權限,用於系統維護,禁止遠程登錄class

runlevel 2: multiuser without network 多用戶狀態(沒有NFS)network

runlevel3: multiuser 徹底的多用戶狀態(有NFS),登錄後進入控制檯命令行模式權限

runlevel4: unuse 系統未使用,保留debian

runlevel5: x11 X11控制檯,登錄後進入圖形GUI模式

runlevel6: reboot 系統正常關閉並重啓,默認運行級別不能設爲6,不然不能正常啓動

在debian/ubuntu中,runlevel的定義爲:

0 - Halt 

1 - Single 

2 - Full multi-user with display manager (GUI) 

3 - Full multi-user with display manager (GUI) 

4 - Full multi-user with display manager (GUI) 

5 - Full multi-user with display manager (GUI) 

6 - Reboot 

能夠發現2~5級是沒有任何區別的。 

Ubuntu系統默認的運行級別爲2。

所以,咱們可使用init 0來執行halt關機,使用init 6來執行reboot。

其實shutdown命令也是在執行完一系列操做後,好比說逐個關閉進程/服務,調用sync將數據寫入磁盤等,而後調用init0或init6來執行關機或重啓的。

而halt其實是調用shutdown -h now,能夠不理會系統當前狀態而直接關機,但在有的系統中,halt不會關閉電源,而只關閉了os。

下面咱們對這些命令的使用方法略作總結。

相關文章
相關標籤/搜索