重啟指令總覽
| 指令 | 說明 | 適用場景 |
reboot | 立即重啟 | 緊急重啟 |
shutdown -r now | 立即重啟 (需 root) | 標準重啟 |
shutdown -r 10 | 10 分鐘後重啟 | 排程維護 |
shutdown -r 20:35 | 20:35 重啟 | 指定時間維護 |
取消排程:shutdown -c
關機指令總覽
| 指令 | 說明 | 適用場景 |
halt | 立即關機 | 快速關機 |
poweroff | 立即關機 (切斷電源) | 完整關機 |
shutdown -h now | 立即關機 (需 root) | 標準關機 |
shutdown -h 10 | 10 分鐘後關機 | 排程關機 |
取消排程:shutdown -c
核心差異深度解析
shutdown - 安全關機標準
- 通知所有登入用戶系統將關閉
- 凍結
login,禁止新用戶登入
- 發送
SIGTERM 給所有進程,給予緩衝時間
- 讓
vi、mail、news 等程式安全退出
- 透過
init 切換 runlevel:0=關機、6=重啟、1=單用戶模式
shutdown 參數完整表
| 參數 | 功能 |
-t sec | 切換 runlevel 前等待秒數 |
-r | 重啟 |
-k | 僅發送警告,不實際關機 |
-h | 關機並切斷電源 |
-n | 不經 init 直接關機 (不建議) |
-c | 取消當前關機程序 |
-f | 重啟時跳過 fsck |
-F | 重啟時強制 fsck |
-time | 設定關機前等待時間 |
halt - 最簡單關機
- 實際呼叫
shutdown -h
- 殺死應用進程 →
sync() 同步檔案系統 → 停止核心
- 不發送警告訊息,不等待進程優雅退出
實戰最佳實踐
# 標準維護重啟 (通知用戶、給予緩衝)
shutdown -r +5 "系統將在 5 分鐘後重啟進行核心更新,請儲存工作"
# 立即安全關機
shutdown -h now
# 緊急情況強制重啟 (資料可能遺失)
reboot -f
# 查看 runlevel 定義
cat /etc/inittab
關鍵檔案:/etc/inittab
# 預設 runlevel
id:3:initdefault:
# runlevel 定義
l0:0:wait:/etc/rc.d/rc 0 # 關機
l6:6:wait:/etc/rc.d/rc 6 # 重啟
l1:1:wait:/etc/rc.d/rc 1 # 單用戶模式