1. 程式人生 > >Linux 命令篇 之 關機與重啟命令

Linux 命令篇 之 關機與重啟命令

Shutdown.exe的引數,每個都具有特定的用途,執行每一個都會產生不同的效果,比如“-s”就表示關閉本地計算機,“-a”表示取消關機操作,下面列出了更多引數,大家可以在Shutdown.exe中按需使用:

-f:強行關閉應用程式

-m \\計算機名:控制遠端計算機

-i:顯示圖形使用者介面,但必須是Shutdown的第一個選項

-l:登出當前使用者

-r:關機並重啟

-t時間:設定關機倒計時

-c "訊息內容":輸入關機對話方塊中的訊息內容(不能超127個字元)

linux下常用的關機命令有:shutdown、halt、poweroff、init;重啟命令有:reboot。下面本文就主要介紹一些常用的關機命令以及各種關機命令之間的區別和具體用法。

單單關機和重啟的命令就至少五個了

1、reboot 2、shutdown -r now 立刻重啟(root使用者使用) 3、shutdown -r 10 過10分鐘自動重啟(root使用者使用)  4、shutdown -r 20:35 在時間為20:35時候重啟(root使用者使用) 如果是通過shutdown命令設定重啟的話,可以用shutdown -c命令取消重啟

下面我們來看看linux的這些具體的關機命令之間的區別和各自的用法

1.shutdown 安全的關機命令

對於shutdown命令,它是大家都推薦的一個安全的命令,通過引數-h或-r的配合來完成關機或重啟。不過在linux系統中只有擁有root許可權才可以使用這個命令。所以,雖然大家都推薦用這個命令,但是這個命令用起來真的不太方便:想要用這個命令嗎?先去獲得root許可權吧。shutdown執行關機,是送訊號給init,要求它改變執行級別,以此來關機。關機或重啟實際上是執行級別的調整,所以我們也可以用init直接調整執行級別來進行關機或重啟。使用這個命令時,機器立即關機或重啟。它也需要root許可權。

那麼為什麼說shutdown命令是安全地將系統關機呢?

實際中有些使用者會使用直接斷掉電源的方式來關閉linux,這是十分危險的。因為linux與windows不同,其後臺執行著許多程序,所以強制關機可能會導致程序的資料丟失使系統處於不穩定的狀態。甚至在有的系統中會損壞硬體裝置。而在系統關機前使用shutdown命令,系統管理員會通知所有登入的使用者系統將要關閉。並且login指令會被凍結,即新的使用者不能再登入。直接關機或者延遲一定的時間才關機都是可能的,還有可能是重啟。這是由所有程序〔process〕都會收到系統所送達的訊號〔signal〕決定的。

shutdown執行它的工作是送訊號〔signal〕給init程式,要求它改變 runlevel。runlevel 0 被用來停機〔halt〕,runlevel 6 是用來重新啟用〔reboot〕系統,而 runlevel 1則是被用來讓系統進入管理工作可以進行的狀態,這是預設的。假定沒有-h也沒有-r引數給shutdown。要想了解在停機〔halt〕或者重新開機〔reboot〕過程中做了哪些動作?你可以在這個檔案/etc/inittab裡看到這些runlevels相關的資料。

shutdown 引數說明:

[-t] 在改變到其它runlevel之前,告訴init多久以後關機。 [-r] 重啟計算器。 [-k] 並不真正關機,只是送警告訊號給每位登入者〔login〕。 [-h] 關機後關閉電源〔halt〕。 [-n] 不用init而是自己來關機。不鼓勵使用這個選項,而且該選項所產生的後果往往不總是你所預期得到的。 [-c] cancel current process取消目前正在執行的關機程式。所以這個選項當然沒有時間引數,但是可以輸入一個用來解釋的訊息,而這資訊將會送到每位使用者。 [-f] 在重啟計算器〔reboot〕時忽略fsck。   [-F] 在重啟計算器〔reboot〕時強迫fsck。 [-time] 設定關機〔shutdown〕前的時間。       2.halt 最簡單的關機命令

用halt命令來關機時,實際呼叫的是shutdown -h。halt 執行時將殺死應用程序,執行sync系統呼叫檔案系統寫操作完成後就會停止核心。

halt 引數說明:

halt –w 不真關機,保留

halt –p 關機並關電源

halt –d 關機,不保留

3.poweroff 關機並切斷電源

4.init 6重啟

init 0關機

5.reboot 重啟