Linux 會死機嗎?會。最常見是系統負載過高(如 Fork 炸彈、記憶體耗盡)。關鍵在於:死機後如何安全、不丟資料地恢復?本文提供分級應對方案:從文字介面殺進程,到核心級 Magic SysRq 安全重啟,最後底牌——硬體重啟。
Ctrl+Alt+F1(F1-F6 均可),等待切換到 TTY 登入提示符top,觀察 1-2 次刷新,記下佔用 CPU/記憶體最高的 PIDkill → 觀察負載下降kill -KILL (SIGKILL,必殺)⚠️ 切勿嘗試圖形介面工具(如 GNOME 系統監視器),會進一步加重負載,雪上加霜。
鍵盤無響應不代表核心已死。Magic SysRq 繞過圖形子系統,直接向核心發送底層指令,實現「有序關機→同步磁碟→只讀掛載→重啟」全流程,極大降低檔案系統損壞風險。
echo 1 > /proc/sys/kernel/sysrq
永久生效請寫入 /etc/sysctl.conf:kernel.sysrq = 1
| 鍵 | 動作 | 中文說明 |
|---|---|---|
| R | unRaw | 從 X Server 奪回鍵盤控制權 |
| E | tErminate | 向所有進程發送 SIGTERM,讓其優雅退出 |
| I | kIll | 向所有進程發送 SIGKILL,強制終止 |
| S | Sync | 將所有記憶體資料同步刷入磁碟 |
| U | Unmount | 將所有分區重掛載為唯讀 |
| B | reBoot | 重啟系統 |
記憶口訣: BUSIER(busy 比較級,「更忙」)倒寫即為 REISUB。順序絕不可亂,否則可能資料未同步即重啟。
長按電源鍵 4 秒強制斷電,或按機箱 Reset 鍵。風險:檔案系統可能損壞,下次啟動需跑 fsck 修復。
top/dmesg,事後複盤極有價值Linux 死機本就罕見,遇到也有分級應對:TTY+kill 解決 90% 高負載;REISUB 安全重啟解決 99% 凍結;硬重啟僅作最後防線。掌握這套組合拳,讓死機從「災難」降級為「小插曲」。