書名: Linux操作系統作者名: 邵國金主編本章字數: 1085字更新時間: 2019-01-09 15:20:09
2.3 Linux系統的關閉與重啟動
因為UNIX/Linux采用異步寫和延遲寫機制,大部分數據操作都在緩沖區內進行,并沒有實時的寫入設備,如果強行關機會導致數據丟失,嚴重者可造成系統癱瘓。因此,在切斷電源之前必須首先關閉系統,絕不能斷電了事。Linux系統的關閉可以在字符或圖形界面下進行。
2.3.1 字符界面
在字符界面下常用的關機/重啟命令有shutdown、halt、reboot、poweroff和init,它們都可以達到關閉系統的目的,但每個命令的工作過程是不同的。
1.halt命令
halt命令的功能是關閉系統,在執行過程中,終止所有應用和系統進程,將所有數據寫入存儲介質,最后關閉系統。其常用方法為:
參數-f用于不調用shutdown而強制快速關機或重啟;-p用于在關閉系統時關掉電源。
halt [-f] [-p]
一般情況,使用-p參數在關閉系統后,會自動關閉電源。如果計算機不這樣做,在看到“System halted.”消息后,可以手動切斷電源。
2.reboot命令
reboot命令的工作過程與halt命令差不多,但它在關閉系統時會重新啟動。
3.poweroff命令
poweroff命令等同于halt -p,關閉系統時同時關掉電源。
4.init和telinit命令
系統內運行著一個init進程,它負責系統的初始化和運行級別的切換。telinit和init命令的作用是告訴init進程作運行級切換,它的用法為:
init runlevel telinit runlevel
Linux/UNIX有7個運行級或運行狀態,定義如下(參見/etc/inittab)。
(1)0:關閉系統。
(2)1:單用戶模式。
(3)2:多用戶使用模式,但沒有NFS功能。
(4)3:完全多用戶模式。
(5)4:沒有使用,用戶可自定義。
(6)5:完全多用戶模式,并且支持X-Windows(默認運行級)。
(7)6:重新啟動。
init命令的使用示例如下:
#init 0 #關機
#init 6 #重新啟動 #init 1 #切換到單用戶
5.shutdown命令
1)功能及用法
shutdown命令可以安全地關閉系統,在執行系統關閉與命令發出之間可以指定一個時間延遲,以供用戶做準備并從容退出。使用shutdown命令時,將在關機前向系統內的所有用戶發送通知或警告信息,告訴系統發生了什么及如何處理。其用法為:
shutdown [-krhfFc] time [warn_msg]
2)參數說明
shutdown命令的部分參數如表2-1所示。
表2-1 shutdown命令的部分參數

說明:當不帶關機選項時,如-h、-H、-r,默認切換到運行級1,即單用戶模式;若要通過shutdown-c撤銷已經發出的shutdown命令,必須在與發出shutdown命令不同的終端上進行。
3)shutdown使用示例
#shutdown-r now #立刻重新啟動 #shutdown-h now #立刻關機 #shutdown-k now'Hey Lets go now.' #發出警告信息,但沒有真的關機 #shutdown-h 10:42'10:42將關閉系統,請屆時退出' #10:42關機 #shutdown-r+20'20min后將重啟系統,請屆時退出' #20min后重啟系統 #shutdown-c #撤銷已下達的shutdown命令。注意,必須在其他終端才能使用此命令 #shutdown now #切換至單用戶模式(不加任何選項時)
2.3.2 圖形界面
在圖形界面下,用戶可以通過“系統”→“關機”選項(如圖2-6所示),打開如圖2-8所示的關機對話框。用戶可以選擇“關機”(Shut down)、“重新啟動”(Reboot)、“休眠”(Hibernate)或“取消”(Cancel)按鈕進行關機、重啟系統、休眠或撤銷。

圖2-8 關機對話框
- pcDuino開發實戰
- 操作系統實用教程(Linux版)
- Social Media Mining with R
- Learning Windows Server Containers
- Linux集群和自動化運維
- 新手學電腦從入門到精通(Windows 10+Office 2016版)
- 網絡操作系統教程:Windows Server 2016管理與配置
- Mastering Reactive JavaScript
- Kali Linux 2018:Windows Penetration Testing
- AutoCAD 2014中文版從入門到精通
- Linux內核修煉之道
- Angular權威教程
- Docker容器技術與運維
- 再也不踩坑的kubernetes實戰指南
- Website Development with PyroCMS