歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Unix知識 >> 關於Unix >> 開機/關機管理

開機/關機管理

日期:2017/3/6 15:40:46   编辑:關於Unix
#版權宣告:1999CopyrightOLS3Allrightsreserved. #作者:OLS3(臥龍小三) #本講義僅供台南縣87學年度網路管理進階研習班上課之用. #學員可保存一份自用,供日後網管時參考備查. #作者保有一切形式的著作權. #欲作其它用途者,需經作者授權同意. #未經作者授權同 # 版權宣告: 1999 Copyright OLS3 All rights reserved.

# 作者: OLS3 (臥龍小三)
# 本講義僅供台南縣 87 學年度網路管理進階研習班上課之用.
# 學員可保存一份自用, 供日後網管時參考備查.
# 作者保有一切形式的著作權.
# 欲作其它用途者, 需經作者授權同意.
# 未經作者授權同意之前, 請勿轉載刊登.

關機

一. 關機流程

Linux 運作時, 不可以直接將電源關閉, 否則, 可能會損毀檔案系統.

因此, 必須按照正常的程序關機:

觀察系統使用情形(也許當時, 正有使用者做著重要的工作呢!)
通知線上使用者, 本機即將關閉. (如果, 使用者眾多, 應該給予多一點的緩時間)
使用正確的 shutdown 指令.
關機使用的指令是 shutdown.

shutdown 以一種安全的方式關閉主機系統.

它會通知所有已登入的user, 主機即將關閉, 並且會將登入(login)的活動予以凍結.

shutdown 允許你:

選擇關機、重新開機或進入單人操成模式
設定關機時間: 可以設定成現在立刻關機, 也可以設定某一個特定的時間,
可以自訂關機之前, 傳送給線上 user 的警告訊息
可以只送警訊息, 作勢嚇嚇user, 但卻不是真的要關機. 因為, 有時, 你可能想要做一些試驗, 不想有其它 user 擾.
可以選擇是否要 fsck 檢查檔案系統
當 shutdown 開始執行後, 系統會以 SIGTERM 訊號通知所有的行程(processes), 主機即將關閉.

這麽做是必要的, 因為, 如此一來, 一些在執行中的程式, 才能即時存檔、清除暫存檔或將仍在記憶體中的資料趕快寫入硬碟中(flush).

shutdown 以訊號通知 init, 要求 init 要切換 runlevel, 來達成上述目的.

如果是關機(halt), 則切換到 runlevel 0; 若是重新開機(reboot), 則切換到 runlevel 6; 若是單人模式(single), 則切換到 runlevel 1.

然後就交給相關 runlevel 中的 script檔, 完成最後的關機事項.

若欲知各 runlevel 的定義情形, 可參考 /etc/inittab.

二. 關機指令.

/sbin/shutdown [-t 秒數] [-rkhncfF] 時間 [警告訊息]

-t 秒數 : 設定在切換至不同的runlevel之前, 警告和刪除二訊號之間的延遲時間(秒).

-k : 僅送出警告訊息文字, 但不是真的要 shutdown.

-r : shutdown 之後重新開機.

-h : shutdown 之後關機.

-n : 不經過 init , 由 shutdown 指令本身來做關機動作.(不建議你用)

-f : 重新開機時, 跳過 fsck 指令, 不檢查檔案系統.

-F : 重新開機時, 強迫做 fsck 檢查.

-c : 將已經正在 shutdown 的動作取消.



例子:

shutdown -r now 立刻重新開機
shutdown -h now 立刻關機
shutdown -k now 'Hey! Go away! now....' 發出警告訊息, 但沒有真的關機
shutdown -t3 -r now 立刻重新開機, 但在警告和刪除processes 之間, 延遲3秒鐘.
shutdown -h 10:42 'Hey! Go away!' 10:42 分關機
shutdown -r +10 'Hey! Go away!' 10 分鐘後關機
shutdown -c 將剛才下的 shutdown 指令取消,必須切換至其它tty, 登入之後, 才能下此一指令.
shutdown now 切換至單人操作模式(不加任何選項時)

注意事項:

時間參數務必要加: 不是用 now, 便是用 hh:mm 或 +mm
now 其實就是 +0 的意思.


不加任何選項的話, 會進入 runlevel 1, 即單人操作模式.

Copyright © Linux教程網 All Rights Reserved