在linux下關機和重新啟動系統有shutdown、halt、reboot、init,對於他們來說他們的內部工作過程是不同樣的。
1、shutdown命令
使用它能夠安全地關閉系統。然而在關閉系統時。會通知全部登錄的用戶系統將要關閉,而且全部的指令都將會被凍結,即全部的新用戶不能再登錄。使用該指令將會出現馬上關閉或重新啟動以及延遲一段時間關閉或重新啟動。(注意:僅僅有超級用戶才干使用該命令)
命令語法格式:
shutdown [選項] [時間] [警告信息]
該命令中各選項的含義說明:
-k: 僅僅是發出警告信息給用戶
-r: 關閉系統后重新啟動系統
-h: 關閉系統后不重新啟動系統
-f: 高速關閉系統。可是是重新啟動系統時不進行磁盤檢測(在實驗時發現系統進入bios界面。可是不能進行不論什么操作)
-n: 高速關閉系統,可是不經過init程序關閉
-c: 中斷關閉系統(沒有找到詳細怎么實驗)
2、halt命令
使用halt命令就是調用“shutdown -h”命令來運行關閉系統
命令語法格式;
halt [選項]
-w: 並非真正的關閉系統。僅僅是寫“wtmp”(/var/log/wtmp)記錄
-d: 不寫“wtmp”
-f: 沒有調用“shutdown”而是強制關閉
-i:關閉系統或重新啟動系統前。關閉全部的網路uo接口
-p:該選項為缺省選項,關閉系統時調用“power off”
3、reboot命令
reboot命令的工作過程與halt命令相似,可是reboot是引發主機重新啟動。它全部的參數與“halt”相似。
4、init命令
init命令運用系統的執行級別控制系統。
它是全部系統的進程的祖先。它的進程號始終是1,所以發送“TERM”信號給init會終止全部用戶進程和守護進程等,“shutdown”即就是使用這樣的機制。init 0為關閉系統。init 1為重新啟動系統。