萬盛學電腦網

 萬盛學電腦網 >> 服務器教程 >> Linux系統的關機與重啟相關命令總結

Linux系統的關機與重啟相關命令總結

   1、 sync

  sync:flush file system buffers。

  sync命令作用:刷新文件系統的緩存,將數據同步寫入硬盤。

  執行sync命令的必要性:在計算機中,CPU所處理的數據首先要被讀入內存中,而這些數據又經常要寫回到硬盤上,但是硬盤的速度相對於內存來說太慢,如果數據頻繁在內存與硬盤間交換,系統性能將大打折扣,所以為了加快數據的讀取速度,默認情況下,某些已經加載在內存中的數據將不會直接被寫回硬盤,而是先暫存在內存當中,這時如果關機或重啟電腦,暫存在內存中的數據將可能丟失,正確的做法是先執行sync命令,多執行幾次也無妨,以保證數據寫入硬盤,事實上一些關機命令默認也執行了sync操作。

  2、 shutdown

  shutdown命令用於安全關閉Linux系統。有些用戶會使用直接斷掉電源的方式來關閉Linux,這是十分危險的。因為Linux與Windows不同,其後台運行著許多進程,所以強制關機可能會導致進程的數據丟失,使系統處於不穩定的狀態,甚至會損壞硬件設備。

  執行shutdown命令時,系統會通知所有登錄的用戶系統將要關閉,並且login指令會被凍結,即新的用戶不能再登錄系統。使用shutdown命令可以直接關閉系統,也可以延遲指定的時間再關閉系統,還可以重新啟動。延遲指定的時間再關閉系統,可以讓用戶有時間儲存當前正在處理的文件和關閉已經打開的程序。

  shutdown:bring the system down。

  語法格式如下:

  代碼如下:

  shutdown [OPTIONS]… TIME [MESSAGE]

  幾個參數——

  -k:不是真的關機,而是發送警告信息,此時不再允許登錄。

  -c:取消已經在進行的shutdown指令,此時TIME參數不必選擇,MESSAGE為第一個參數,這個參數可選。

  -r:將系統服務停掉之後reboot。

  -h:將系統服務停掉之後halt或者powweroff。

  -H:將系統服務關掉之後halt。

  -P:將系統服務關掉之後poweroff。

  注意:shutdown命令的TIME是必選參數,有多種格式,now表示立刻執行等同於參數為0的情況,形如20:20表示命令執行的具體時間,形如20表示20分鐘後執行命令。

  shutdown命令的工作實質是給init程序發送信號(signal),要求其切換系統的運行級別(Runlevel)。系統的運行級別包括:

  0:關閉系統

  1:單用戶模式,如果沒有為shutdown命令指定-h或-r參數而直接執行,則默認將切換到此運行級別

  2:多用戶模式(不支持NFS)

  3:多用戶模式(支持NFS),一般常用此種運行級別

  5:多用戶模式(GUI模式)

  6:重新啟動系統

  3、 reboot、halt、poweroff

  語法格式如下:

  reboot [OPTIONS]… [REBOOTCOMMAND]

  halt [OPTIONS]…

  poweroff [OPTIONS]…

  幾個參數——

  -f:同上面的描述,不會調用shutdown(8)。

  -p:指定為halt命令,效果同poweroff一樣。

  -w:不調用shutdown(8)和reboot(2),只是把shutdown時間記錄寫入/var/log/wtmp中。

  –verbose:輸出詳細的命令執行信息。

  reboot(8)、halt(8)、poweroff(8):reboot or stop the system,這三個命令類似,查找man時,它們在同一個page8。當執行命令時使用了參數“-f”或者處於0~6的runlevel時,將會激活系統調用reboot(2) (REBOOTCOMMAND參數會傳過去)並直接重啟系統,否則調用的是shutdown(8),此時REBOOTCOMMAND參數不會傳過去。在調用reboot(2)之前,shutdown時間記錄會首先寫入/var/log/wtmp中。

  halt 關機命令

  halt是最簡單的關機命令,其實際上是調用shutdown -h命令。halt執行時,殺死應用進程,文件系統寫操作完成後就會停止內核。

  halt命令的部分參數如下:

  [-f] 沒有調用shutdown而強制關機或重啟

  [-i] 關機或重新啟動之前,關掉所有的網絡接口

  [-p] 關機時調用poweroff,此選項為缺省選項

  reboot linux重啟命令

  reboot的工作過程與halt類似,其作用是重新啟動,而halt是關機。其參數也與halt類似。

  poweroff

  部分泛UNIX/LINUX系統才支持,紅旗LINUX亦適用。

  4、 init

  init是所有進程的祖先,其進程號始終為1。init用於切換系統的運行級別,切換的工作是立即完成的。init 0命令用於立即將系統運行級別切換為0,即關機;init 6命令用於將系統運行級別切換為6,即重新啟動。

  Linux的執行等級共有七種,即run level從0到6,其中run level 0表示關機,run level 6表示重啟,切換run level的命令是init,如下:

  代碼如下:

  $ init 0

  $ init 6

  init 0可以關機,init 6可以重啟。

copyright © 萬盛學電腦網 all rights reserved