Ubuntu 關機過程卡在「Reached target Shutdown」或黑畫面閃爍,無法完成電源切斷,常見於 ACPI 電源管理與主機板 BIOS/UEFI 相容性問題。強制關機 (長按電源鍵) 可能導致檔案系統損壞。透過 GRUB 核心參數 acpi=force 強制啟用 ACPI 關機流程,可解決大多數此類問題。
poweroff 後,畫面停留在文字模式訊息或黑畫面。fsck 檢查檔案系統。_S5 關機狀態。acpi=force 覆寫核心偵測邏輯。sudo vi /etc/default/grub
# 原始:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
# 修改為:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi=force"
# 若已有其他參數,追加在尾部:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomodeset acpi=force"
sudo update-grub
sudo reboot
若 acpi=force 無效,嘗試以下參數 (逐一或組合測試):
| 參數 | 適用場景 |
|---|---|
acpi=off | 完全停用 ACPI,極舊硬體 (會失去電源管理、電池狀態、風扇控制) |
acpi=strict | 嚴格模式,拒絕有誤差的 ACPI 表 |
reboot=force | 重啟卡住時使用 |
reboot=bios | 使用 BIOS 重啟向量 |
reboot=acpi | 使用 ACPI 重啟 |
nolapic | 停用本地 APIC,部分舊主機板需求 |
noapic | 停用 I/O APIC |
測試方法:開機 GRUB 選單按 e 臨時添加參數 → Ctrl+x 啟動 → 測試關機 → 成功則寫入 /etc/default/grub 永久生效。
# 1. 查看關機日誌
journalctl -b -1 -u systemd-shutdown
# -b -1: 上一次開機
# 2. 啟用詳細關機輸出
# 臨時: GRUB 編輯移除 quiet splash
# 永久: GRUB_CMDLINE_LINUX_DEFAULT="" (移除 quiet splash)
# 3. 手動觸發關機觀察
systemctl poweroff --force --force
# --force --force: 立即執行,跳過單元關閉邏輯
acpi=force,確認已安裝 Guest Additions/VMware Tools。Ubuntu 關機卡住主流解決:編輯 /etc/default/grub → GRUB_CMDLINE_LINUX_DEFAULT 追加 acpi=force → update-grub → reboot。若無效,依序嘗試 reboot=force、acpi=off、BIOS 更新。務必避免長期依賴強制斷電,以免資料遺失與檔案系統損壞。