Windows 開機問題的進階疑難排解

試用虛擬助理 - 其可協助您快速找出並修正常見的 Windows 開機問題。

注意事項

本文主要提供給支援專員與 IT 專業人員使用。 如果您要尋找有關復原選項的一般資訊,請參閱 Windows 10 中的復原選項

適用於: Windows 10

摘要

有幾個原因會導致 Windows 電腦在啟動期間發生問題。 若要針對開機問題進行疑難排解,請先判斷電腦在下列哪一個階段停滯:

階段 開機程序 BIOS 模式 UEFI
1 開機前 MBR/PBR (啟動程序程式碼) UEFI 韌體
2 Windows 開機管理程式 %SystemDrive%\bootmgr \EFI\Microsoft\Boot\bootmgfw.efi
3 Windows OS 載入器 %SystemRoot%\system32\winload.exe %SystemRoot%\system32\winload.efi
4 Windows NT OS 核心 %SystemRoot%\system32\ntoskrnl.exe
  1. 開機前:電腦的韌體會起始開機自我測試 (POST) 並載入韌體設定。 偵測到有效的系統磁碟時,此開機前程式就會結束。 韌體會讀取主開機記錄 (MBR),然後啟動 Windows 開機管理程式。

  2. Windows 開機管理程式:Windows 開機管理程式會在 Windows 開機磁碟分割上尋找並啟動 Windows 載入器 (Winload.exe)。

  3. Windows 作業系統載入器:載入啟動 Windows 核心所需的基本驅動程式後,核心隨即開始執行。

  4. Windows NT OS 核心:核心會將系統登錄區和其他標示為 BOOT_START 的驅動程式載入記憶體中。

    核心會將控制權傳遞給工作階段管理員程序 (Smss.exe) ,其會初始化系統工作階段,然後載入並啟動未標示為 BOOT_START 的裝置和驅動程式。

以下是開機順序的摘要、顯示畫面上顯示的內容,以及該順序進行時的一般開機問題。 開始進行疑難排解之前,您必須先了解開機程序的概要和顯示狀態,以確保能一遇到問題便可正確加以識別。 選取縮圖以檢視較大的縮圖。

開機順序流程圖的圖表。

每個階段都有不同的疑難排解方法。 本文提供前三個階段期間所發生問題的疑難排解技術。

注意事項

如果電腦重複開機至復原選項,請在命令提示字元執行下列命令以中斷迴圈:

Bcdedit /set {default} recoveryenabled no

如果 F8 選項無法運作,請執行下列命令:

Bcdedit /set {default} bootmenupolicy legacy

BIOS 階段

若要判斷系統是否已通過 BIOS 階段,請依照下列步驟執行:

  1. 如果有任何外部週邊設備連線到電腦,請將其中斷連線。

  2. 檢查實體電腦上的硬碟燈是否正常運作。 如果無法運作,此障礙表示啟動程式停滯于 BIOS 階段。

  3. 按下 NumLock 鍵,以查看指示燈是否開啟和關閉。 如果未切換,此障礙表示啟動程式停滯于 BIOS。

    如果系統停滯于 BIOS 階段,可能會發生硬體問題。

開機載入器階段

如果畫面是黑色,但閃爍游標除外,或者如果您收到下列其中一個錯誤碼,則此狀態表示開機程式停滯於開機載入器階段:

  • 開機設定資料 (BCD) 遺失或損毀
  • 開機檔案或 MBR 損毀
  • 作業系統遺失
  • 開機磁區遺失或損毀
  • Bootmgr 遺失或損毀
  • 因系統登錄區遺失或損毀而無法開機

若要針對此問題進行疑難排解,請使用 Windows 安裝媒體啟動電腦、按 Shift+F10 以取得命令提示字元,然後使用下列任一方法。

方法 1:安裝修復工具

啟動修復工具會自動修正許多常見的問題。 此工具也可讓您快速診斷和修復更複雜的啟動問題。 當電腦偵測到啟動問題時,電腦會啟動該啟動修復工具。 當工具啟動時,它會執行診斷。 這些診斷包括分析開機記錄檔,以判斷問題的原因。 當啟動修復工具判斷原因時,工具會嘗試自動修正問題。

若要執行此叫用啟動修復工具的工作,請遵循下列步驟。

注意事項

如需啟動 WinRE 的其他方法,請參閱 Windows 修復環境 (Windows RE)

  1. 針對已安裝的 Windows 版本,將系統啟動至安裝媒體。 如需詳細資訊,請參閱建立 Windows 的安裝媒體
  2. 在 [安裝 Windows]畫面上,選取 [下一步]> [修復您的電腦]
  3. 在 [選擇選項] 畫面上,按一下 [疑難排解]
  4. 在 [進階選項] 畫面上,選取 [啟動修復]
  5. 在 [啟動修復] 之後,選取 [關機],然後開啟您的電腦,以查看 Windows 是否可以正確開機。

啟動修復工具會產生記錄檔,以協助您瞭解啟動問題和已進行的修復。 您也可以在下列位置中找到記錄檔:

%windir%\System32\LogFiles\Srt\Srttrail.txt

如需詳細資訊,請參閱疑難排解藍色畫面錯誤

方法 2:修復開機程式碼

若要修復開機程式碼,請執行下列命令:

BOOTREC /FIXMBR

若要修復開機磁區,請執行下列命令:

BOOTREC /FIXBOOT

注意事項

Fixmbr 一起執行 BOOTREC 只會覆寫主要開機程式碼。 如果 MBR 中的損毀影響分割區資料表,則執行 Fixmbr 可能無法修正問題。

方法 3:修正 BCD 錯誤

如果您收到 BCD 相關錯誤,請遵循下列步驟:

  1. 掃描已安裝的所有系統。 若要進行此步驟,請執行下列命令:

    Bootrec /ScanOS
    
  2. 重新啟動電腦,以檢查問題是否已解決。

  3. 如果問題未修正,請執行下列命令:

    bcdedit /export c:\bcdbackup
    
    attrib c:\boot\bcd -r -s -h
    
    ren c:\boot\bcd bcd.old
    
    bootrec /rebuildbcd
    
  4. 重新啟動系統。

方法 4:取代 Bootmgr

如果方法 1、2 和 3 無法修正問題,請將 Bootmgr 檔案從磁碟機 C 取代為系統保留的磁碟分割。 如果要執行此取代,請依照下列步驟執行:

  1. 在命令提示字元中,將目錄變更為系統保留的磁碟分割。

  2. 執行 attrib 命令以取消隱藏檔案:

    attrib -r -s -h
    
  3. 導覽至系統磁碟機並執行相同的命令:

    attrib -r -s -h
    
  4. 將 bootmgr 檔案重新命名為 bootmgr.old

    ren c:\bootmgr bootmgr.old
    
  5. 導覽至系統磁碟機。

  6. 複製 bootmgr 檔案,然後將它貼到系統保留的磁碟分割。

  7. 重新啟動電腦。

方法 5: 還原系統登錄區

如果 Windows 無法將系統登錄區載入記憶體中,您必須還原系統登錄區。 若要執行此步驟,請使用 Windows 修復環境或使用緊急修復磁片 (ERD) ,將檔案從 C:\Windows\System32\config\RegBack 目錄複寫到 C:\Windows\System32\config

如果問題持續發生,您可能需要將系統狀態備份還原至替代位置,然後擷取要取代的登錄區。

注意事項

從 Windows 10 1803 版開始,Windows 不再自動將系統登錄備份至 RegBack 資料夾。這項變更是原本設計的做法,旨在協助減少 Windows 的整體磁碟使用量大小。 若要復原登錄區損毀的系統,Microsoft 建議您使用系統還原點。 如需詳細資訊,請參閱從 Windows 10 1803 版開始,系統登錄不再備份至 RegBack 資料夾

核心階段

如果系統在核心階段停滯,您會遇到多個徵兆或收到多個錯誤訊息。 這些錯誤訊息包括但不限於下列範例:

若要針對這些問題進行疑難排解,請一次嘗試下列一個復原開機選項。

案例 1:嘗試以安全模式或上次的正確設定啟動電腦

在 [進階開機選項] 畫面上,嘗試使用 [安全模式] 或 [安全模式 (含網路功能)] 啟動電腦。 如果其中一個選項可運作,請使用 [事件檢視器] 來協助識別和診斷開機問題的原因。 若要檢視記錄在事件記錄檔中的事件,請遵循下列步驟:

  1. 可使用下列方法之一來開啟事件檢視器:

    • 前往 [開始] 功能表,選取 [系統管理工具],然後選取 [事件檢視器]
    • 在 Microsoft Management Console (MMC) 中啟動事件檢視器嵌入式管理單元。
  2. 在主控台樹中,展開 [事件檢視器],然後選取您要檢視的記錄檔。 例如,選擇 [系統記錄檔] 或 [應用程式記錄]

  3. 在詳細資料窗格中,開啟您想要檢視的事件。

  4. 編輯功能表上,選取複製。 在您要貼上事件的程式中開啟新文件。 例如 Microsoft Word。 然後選取 [貼上]

  5. 使用向上鍵或向下鍵來檢視上一個或下一個事件的描述。

初始狀態開機

若要針對影響服務的問題進行疑難排解,請使用系統設定 (msconfig) 執行初始狀態開機。 選取 [選擇性啟動],一次測試一個服務,以判斷哪一個服務造成問題。 如果您找不到原因,請嘗試包含系統服務。 不過,在大部分情況下,有問題的服務是協力廠商。

停用所有您發現有錯誤的服務,然後選取 [正常啟動] 再次嘗試啟動電腦。

如需詳細資訊,請參閱如何在 Windows 中執行初始狀態開機

如果電腦以停用驅動程式簽章模式啟動,請在停用驅動程式簽章強制模式中啟動電腦,然後遵循下列文章中所述的步驟來判斷哪些驅動程式或檔案需要強制執行驅動程式簽章:針對遺失驅動程式簽章所造成的開機問題進行疑難排解 (x64)

注意事項

如果電腦是網域控制站,請嘗試使用目錄服務還原模式 (DSRM)。

如果您遇到停止錯誤 "0xC00002E1" 或 "0xC00002E2",這個方法是很重要的步驟

範例

警告

Serious problems might occur if you modify the registry incorrectly by using Registry Editor or by using another method. These problems might require that you reinstall the operating system. Microsoft 不保證可以解決這些問題。 Modify the registry at your own risk.

錯誤碼 INACCESSIBLE_BOOT_DEVICE (STOP 0x7B)

若要針對此停止錯誤進行疑難排解,請依照下列步驟來篩選驅動程式:

  1. 將系統的 ISO 磁碟放在磁碟機中,以移至 Windows 修復環境 (WinRE)。 ISO 應為相同的 Windows 版本或更新版本。

  2. 開啟登錄。

  3. 載入系統登錄區,並將其命名為 test

  4. 在下列登錄子機碼下,查看非 Microsoft 驅動程式的下層篩選器和上層篩選器項目:

    HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class

  5. 針對您找到的每個協力廠商驅動程式,選取上層或下層篩選器,然後刪除值資料。

  6. 在整個登錄中搜尋類似的項目。 視需要進行處理,然後卸載登錄區。

  7. 以一般模式將伺服器重新開機。

如需更多疑難排解步驟,請參閱停止錯誤 7B 或Inaccessible_Boot_Device 的進階疑難排解 (部分機器翻譯)。

若要修正安裝 Windows 更新之後所發生的問題,請使用下列步驟來查看是否有擱置中的更新:

  1. 在 WinRE 中開啟 [命令提示字元] 視窗。

  2. 執行命令:

    DISM /image:C:\ /get-packages
    
  3. 如果有任何擱置中的更新,請執行下列命令來將其解除安裝:

    DISM /image:C:\ /remove-package /packagename: name of the package
    
    DISM /Image:C:\ /Cleanup-Image /RevertPendingActions
    

    嘗試啟動電腦。

如果電腦未啟動,請依照下列步驟執行:

  1. 在 WinRE 中開啟命令提示字元視窗,然後啟動文字編輯器,例如 [記事本]。

  2. 瀏覽至系統磁碟機,然後搜尋 windows\winsxs\pending.xml

  3. 如果找到 pending.xml 檔案,請將檔案重新命名為 pending.xml.old

  4. 開啟登錄,然後在 HKEY_LOCAL_MACHINE 中載入元件登錄區作為測試。

  5. 醒目提示已載入的測試登錄區,然後搜尋 pendingxmlidentifier 值。

  6. 如果 pendingxmlidentifier 值存在,請將其刪除。

  7. 卸載測試登錄區。

  8. 載入系統登錄區,將其命名為 test

  9. 瀏覽至下列子機碼:

    HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\TrustedInstaller

  10. 將 [開始] 值從 1 變更為 4

  11. 卸載登錄區。

  12. 嘗試啟動電腦。

如果停止錯誤發生在啟動程序後期,或是仍然產生停止錯誤,您可以擷取記憶體傾印。 良好的記憶體傾印有助於判斷停止錯誤的根本原因。 如需詳細資訊,請參閱產生核心或完成損毀傾印 (部分機器翻譯)。

如需 Windows 10 或 Windows Server 2016 中分頁檔問題的詳細資訊,請參閱分頁檔簡介 (部分機器翻譯)。

如需停止錯誤的詳細資訊,請參閱停止錯誤或藍色螢幕錯誤問題的進階疑難排解 (部分機器翻譯)。

傾印檔案有時會顯示與驅動程式相關的錯誤。 例如,windows\system32\drivers\stcvsm.sys 遺失或損毀。 在此例中,請依照下列指導方針進行:

  • 檢查驅動程式所提供的功能。 如果驅動程式是協力廠商開機驅動程式,請確定您了解其用途。

  • 如果驅動程式不重要且沒有相依性,請載入系統登錄區,然後停用驅動程式。

  • 如果停止錯誤指出系統檔案損毀,請以離線模式執行系統檔案檢查程式。

    • 若要執行此動作,請開啟 WinRE,開啟命令提示字元,然後執行下列命令:

      SFC /Scannow /OffBootDir=C:\ /OffWinDir=C:\Windows
      

      如需詳細資訊,請參閱使用系統檔案檢查程式 (SFC) 來修正問題

    • 如果磁片損毀,請執行檢查磁碟命令:

      chkdsk /f /r
      
  • 如果停止錯誤指出一般登錄損毀,或如果您認為已安裝新的驅動程式或服務,請遵循下列步驟:

    1. 啟動 WinRE,然後開啟命令提示字元視窗。
    2. 啟動如 Notepad 的文字編輯器。
    3. 導覽至 C:\Windows\System32\Config\
    4. 藉由附加 .old 至名稱來重新命名這五個登錄區。
    5. Regback 資料夾複製所有登錄區,將它們貼到 Config 資料夾中,然後嘗試以一般模式啟動電腦。

注意事項

從 Windows 10 1803 版開始,Windows 不再自動將系統登錄備份至 RegBack 資料夾。這項變更是原本設計的做法,旨在協助減少 Windows 的整體磁碟使用量大小。 若要復原登錄區損毀的系統,Microsoft 建議您使用系統還原點。 如需詳細資訊,請參閱從 Windows 10 1803 版開始,系統登錄不再備份至 RegBack 資料夾