重要注意事項
1. 此方法需要修改系統核心引導文件 \boot\BCD,對該文件任何不恰當修改可能導致無法成功啓動系統。
2. 本解決方案,一共有兩種方案可選,其中第一種方案,僅在未啓用 BitLocker 的虛擬機進行了測試,
在啓用了系統卷加密或設備加密的系統上,不保證在特定條件下,會將用戶鎖在門外,這將導致數據間接“丟失”。
3. 本解決方案,僅在 Surface 3 with Windows 10 Pro 和 VM with Windows 10 Pro 進行有限測試。如要使用,風險自擔。
無論使用哪種方法,都强烈建議,先通過以管理員身份運行命令提示符并執行命令
bcdedit -export bcd.bak
備份一份最新的 BCD 引導記錄,并存放在安全的位置。
第一種方法:
1. 正常啓動系統
2. 以管理員身份運行命令提示符,并執行命令
bcded1t -set {current} bootmenupolicy legacy
需要注意,爲了避免直接執行此命令,我將 bcdedit 中的 i 替換爲了數字 1。
使用 legacy 將讓系統恢復使用較早版本文本格式的高級啓動項。因爲考慮到如果由於操作失誤,而被 BitLocker 所在門外,所以此方法并未在 Surface 3 上進行驗證。
如果要恢復 Windows 10 客戶端的默認設置,則執行
bcdedit -set {current} bootmenupolicy standard
此外存在一種臨時啓用高級啓動項的設置
bcdedit -set {current} onetimeadvancedoptions yes
此設置僅在下次重新啓動系統時有效,如果啓用了 BitLocker 加密,系統則會提示需要提供恢復密鑰來訪問系統卷。
從初步的測試看(設備同時啓用 TPM 和安全啓動),至少默認設置僅接受 USB 或數字恢復密鑰。
第二種方法
這個方法主要思路是,添加引用了特點選項的 OSLoader。
1. 正常啓動系統。
2. 以管理員身份運行命令提示符。
3. 先刪除 bootmgr 中默認啓動項設置
bcdedit -deletevalue {bootmgr} default
默認情況下, 該 default 指示系統直接啓動 Windows 10 所對應的 OSLoader。
4. 下面添加一系列 OSLoader。
爲了描述方便,直接將我系統上生成的每個啓動項的 GUID 複製下來,如果要應用此方法,需要依據實際值進行替換。
部分啓動項的設置組合可能依據設備不同,而未必生效。
bcdedit -copy {current} -d "Enable Boot Logging"
bcdedit -set {454bb480-ffa8-11e4-8256-c0335edf6e5a} bootlog yes
bcdedit -copy {current} -d "Enable low-resolution video"
bcdedit -set {454bb481-ffa8-11e4-8256-c0335edf6e5a} vga yes
bcdedit -copy {current} -d "Safe Mode"
bcdedit -set {454bb482-ffa8-11e4-8256-c0335edf6e5a} safeboot minimal
bcdedit -copy {current} -d "Safe Mode with Networking"
bcdedit -set {454bb483-ffa8-11e4-8256-c0335edf6e5a} safeboot network
bcdedit -copy {current} -d "Safe Mode with Command Prompt"
bcdedit -set {454bb484-ffa8-11e4-8256-c0335edf6e5a} safeboot minimal safebootalternateshell yes
bcdedit -copy {current} -d "Directory services Restore Mode"
bcdedit -set {454bb485-ffa8-11e4-8256-c0335edf6e5a} safeboot dsrepair
bcdedit -copy {current} -d "Safe Mode with Low DPI"
bcdedit -set {454bb486-ffa8-11e4-8256-c0335edf6e5a} safeboot minimal vga yes
bcdedit -copy {current} -d "Safe Mode with Command Prompt and Networking"
bcdedit -set {454bb487-ffa8-11e4-8256-c0335edf6e5a} safeboot network safebootalternateshell yes
bcdedit -copy {current} -d "Directory services Restore Mode with Low DPI"
bcdedit -set {454bb488-ffa8-11e4-8256-c0335edf6e5a} safeboot dsrepair vga yes
添加完成后,就可以直接在啓動時選擇要進入的模式,比如安全模式。
當然副作用是,減慢了啓動速度。
但如果系統存在多個 Windows 系統,那麽此方法可能會導致快速啓動失敗而轉變爲一般啓動。
至於是否與休眠關機有衝突,并未進行測試。
最後,雖然此方法僅僅在 Windows 10 進行了測試,但應該也適用於 Windows 8/8.1 系統。
Folding@Home