這部分的知識是從 Windows Internal 第六版 page 530 文章, 閱讀而來.
大家應該有過一個經驗, 那就是為了玩某個遊戲或軟體, 安裝後整個系統就不能開機了. 偏偏這種麻煩事又發生在明天要交報告的時候. 我以前的做法只有硬著頭皮重灌作業系統. 現在我才知道 Windows 早就有一個機制叫做 Last Known Good. 可以把最後一次成功開機的設定記起來. 危急時可以拿出來使用.
[使用時機] 系統至少要有一次成功開機, 才能使用. 若你的機器從一開始就沒有成功開機過, 那你可能要尋求其他的方法, 解決這個問題.
[為什麼與我有關] 我們都知道寫 Driver 常常會把系統搞掛掉, 我們可以使用 Last Known Good 機制, 讓系統快速恢復正常, 做出必要的措施.
Note:
Windows 8 提供了很多開機的方法 (System Restore, System Image Recovery, Automatic Repair etc.), 我們這裡提供的是 Last Known Good 方法. (在 Windows8 並非預設選項)
Outline
- Introduction
- How to enable Last Known Good option in Windows 8
重點:
- 系統會 crash 的原因, 大多是因為錯誤的 系統設定 或者是錯誤的 driver/service 設定所造成的.
- 另外, 有問題的 driver 是主要發生無法開機的原因之一
Last Known Good 的原理
- [標記] 若之前因為開機失敗, 而使用 Last Known Good 方式開機, 你會發現在 System Select Setting Key 中看到 Failed = 1.
- [恢復新資料] 把 HKLM\SYSTEM\CurrentControlSet 指向 LastknownGood 的上一次成功開機設定
- 因為在 LastKnownGood 的設定中, 沒有你剛剛裝的有問題 driver. 這樣你的系統就可以順利開機
下圖是我的機器的狀態
出問題時, 我怎麼選擇 Last Known Good 選項, 讓我的機器能夠正常開機呢?
如果你的系統是 Windows 7, 你會看到下面的開機選項
但我的電腦是 Windows8, 怎麼都找不到 Last Known Good 選項. 該怎麼讓它出現呢?
詳細作法如下:
Step
1: 執行 regedit, 並在 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session
Manager\Configuration Manager]中, 建立一個 [LastKnownGood] 並且設定 Enabled = 1
Step 2: 在 Configuration Manager 中, 新增 BackupCount = 2
Step
3: 利用 bcdedit 設定開機選項
Step 4: 最後, 再利用 bcdedit 設定 “BootMenuPolicy Legacy” 重新開機, 即完成設定
當你重新開機時, 按下 F8 鍵. 你就會看到 Last Known Good 選項!
如果你怎麼進入 Windows 8 Advanced Start up 選項有興趣. 可以參考下面的步驟.
Enjoy!
by Jing.
References
- http://blog.itbubble.ru/2012/11/how-to-enable-last-known-good.html
- Windows Internal, 6th, pp. 530.










