輕松掌握Linux關(guān)機(jī)命令
又過了一年,進(jìn)入了2010年,在去年也許微軟搶占了Linux的光環(huán),不過對于發(fā)展時間不太長的Linux,能在微軟面前站穩(wěn)腳跟,很不簡單。其實(shí)Linux越來越火熱,很多的計算機(jī)用戶安裝了Linux。對于那些Linux初學(xué)者,本文為你詳細(xì)介紹Linux關(guān)機(jī)命令,為你在學(xué)習(xí)Linux關(guān)機(jī)命令時起一定的作用。
1.shutdown
  
shutdown命令安全地將系統(tǒng)關(guān)機(jī)。 有些用戶會使用直接斷掉電源的方式來關(guān)閉linux,這是十分危險的。因?yàn)閘inux與windows不同,其后臺運(yùn)行著許多進(jìn)程,所以強(qiáng)制關(guān)機(jī)可能會導(dǎo)致進(jìn)程的數(shù)據(jù)丟失﹐使系統(tǒng)處于不穩(wěn)定的狀態(tài)﹐甚至在有的系統(tǒng)中會損壞硬件設(shè)備。
  
而在系統(tǒng)關(guān)機(jī)前使用shutdown命令﹐系統(tǒng)管理員會通知所有登錄的用戶系統(tǒng)將要關(guān)閉。并且login指令會被凍結(jié)﹐即新的用戶不能再登錄。直接關(guān)機(jī)或者延遲一定的時間才關(guān)機(jī)都是可能的﹐還可能重啟。這是由所有進(jìn)程〔process〕都會收到系統(tǒng)所送達(dá)的信號〔signal〕決定的。這讓像vi之類的程序有時間儲存目前正在編輯的文檔﹐而像處理郵件〔mail〕和新聞〔news〕的程序則可以正常地離開等等。
  
shutdown執(zhí)行它的工作是送信號〔signal〕給init程序﹐要求它改變runlevel。Runlevel 0被用來停機(jī)〔halt〕﹐runlevel 6是用來重新激活〔reboot〕系統(tǒng)﹐而runlevel 1則是被用來讓系統(tǒng)進(jìn)入管理工作可以進(jìn)行的狀態(tài)﹔這是預(yù)設(shè)的﹐假定沒有-h也沒有-r參數(shù)給shutdown。要想了解在停機(jī)〔halt〕或者重新開機(jī)〔reboot〕過程中做了哪些動作﹐你可以在這個文件/etc/inittab里看到這些runlevels相關(guān)的資料。
  
shutdown 參數(shù)說明:
  
[-t] 在改變到其它runlevel之前﹐告訴init多久以后關(guān)機(jī)。
  
[-r] 重啟計算器。
  
[-k] 并不真正關(guān)機(jī)﹐只是送警告信號給每位登錄者〔login〕。
  
[-h] 關(guān)機(jī)后關(guān)閉電源〔halt〕。
  
[-n] 不用init﹐而是自己來關(guān)機(jī)。不鼓勵使用這個選項(xiàng)﹐而且該選項(xiàng)所產(chǎn)生的后果往往不總是你所預(yù)期得到的。
  
[-c] cancel current process取消目前正在執(zhí)行的關(guān)機(jī)程序。所以這個選項(xiàng)當(dāng)然沒有時間參數(shù)﹐但是可以輸入一個用來解釋的訊息﹐而這信息將會送到每位使用者。
  
[-f] 在重啟計算器〔reboot〕時忽略fsck。 
  
[-F] 在重啟計算器〔reboot〕時強(qiáng)迫fsck。
  
[-time] 設(shè)定關(guān)機(jī)〔shutdown〕前的時間。
  
2.halt----最簡單的關(guān)機(jī)命令
  
其實(shí)halt就是調(diào)用shutdown -h。halt執(zhí)行時﹐殺死應(yīng)用進(jìn)程﹐執(zhí)行sync系統(tǒng)調(diào)用﹐文件系統(tǒng)寫操作完成后就會停止內(nèi)核。
  
參數(shù)說明:
  
[-n] 防止sync系統(tǒng)調(diào)用﹐它用在用fsck修補(bǔ)根分區(qū)之后﹐以阻止內(nèi)核用老版本的超級塊〔superblock〕覆蓋修補(bǔ)過的超級塊。
  
[-w] 并不是真正的重啟或關(guān)機(jī)﹐只是寫wtmp〔/var/log/wtmp〕紀(jì)錄。
  
[-d] 不寫wtmp紀(jì)錄〔已包含在選項(xiàng)[-n]中〕。
  
[-f] 沒有調(diào)用shutdown而強(qiáng)制關(guān)機(jī)或重啟。
  
[-i] 關(guān)機(jī)〔或重啟〕前﹐關(guān)掉所有的網(wǎng)絡(luò)接口。
  
[-p] 該選項(xiàng)為缺省選項(xiàng)。就是關(guān)機(jī)時調(diào)用poweroff。
  
3.reboot
  
reboot的工作過程差不多跟halt一樣﹐不過它是引發(fā)主機(jī)重啟﹐而halt是關(guān)機(jī)。它的參數(shù)與halt相差不多。
  
4.init
  
init是所有進(jìn)程的祖先﹐它的進(jìn)程號始終為1﹐所以發(fā)送TERM信號給init會終止所有的用戶進(jìn)程﹑守護(hù)進(jìn)程等。shutdown 就是使用這種機(jī)制。init定義了8個運(yùn)行級別(runlevel),init 0為關(guān)機(jī)﹐init 1為重啟。關(guān)于init可以長篇大論﹐這里就不再敘述。另外還有telinit命令可以改變init的運(yùn)行級別﹐比如﹐telinit -iS可使系統(tǒng)進(jìn)入單用戶模式﹐并且得不到使用shutdown時的信息和等待時間。以上就是Linux關(guān)機(jī)命令的介紹。
【編輯推薦】















 
 
 







 
 
 
 