啟動 Windows 域控制器時發生錯誤:目錄服務無法啟動

本文說明如何從損毀的Active Directory 資料庫復原,或從導致計算機無法在正常模式中啟動的類似問題中復原。

適用於:Windows Server 2003
原始 KB 編號: 258062

摘要

本文會引導您完成一系列的步驟,以協助您診斷目錄 服務無法啟動 系統錯誤的原因。 這些步驟可能包括:

  • 確認 Active Directory 目錄服務檔案存在。
  • 確認檔案系統許可權正確無誤。
  • 檢查 Active Directory 資料庫的完整性。
  • 執行語意資料庫分析。
  • 修復 Active Directory 資料庫。
  • 拿掉並重新建立 Active Directory 資料庫。

本文也會告訴您如何使用 Ntdsutil 或 Esentutl 來執行 Active Directory 資料庫的遺失修復。 因為遺失修復會刪除數據,而且可能會造成新問題,所以只有在唯一可用的選項時,才執行遺失修復。

徵狀

當您啟動網域控制器時,畫面可能會空白,而且您可能會收到下列錯誤訊息:

LSASS.EXE - 系統錯誤,安全性帳戶管理員初始化失敗,因為下列錯誤:目錄服務無法啟動。 錯誤狀態0xc00002e1。

請按下 [確定] 關閉此系統並重新啟動至目錄服務還原模式,檢查事件記錄檔以取得詳細資訊。

此外,下列事件標識元訊息可能會出現在事件記錄檔中:

事件標識碼:700
描述:「NTDS (260) 在線重組正在開始資料庫 NTDS 的傳遞。DIT。」
事件標識碼:701
描述:「NTDS (268) Online 重組已完成資料庫 'C:\WINNT\NTDS\ntds.dit' 的完整傳遞。」
事件標識碼:101
描述:「資料庫引擎已停止 (260) NTDS」。
事件標識碼:1004
描述:「目錄已成功關閉。」
事件標識碼:1168
描述:「錯誤:發生 1032 (fffffbf8) 。 (內部標識碼 4042b) 。 請連絡 Microsoft 產品支援服務以取得協助。」
事件標識碼:1103
描述:「無法初始化 Windows 目錄服務資料庫,並傳回錯誤 1032。 無法復原的錯誤,目錄無法繼續。」

原因

之所以發生此問題,是因為下列一或多個條件成立:

  • 磁碟驅動器根目錄上的NTFS檔案系統許可權太嚴格。
  • NTDS 資料夾上的NTFS檔案系統許可權太嚴格。
  • 包含 Active Directory 資料庫的磁碟區驅動器號已變更。
  • Ntds.dit) (Active Directory 資料庫已損毀。
  • NTDS 資料夾已壓縮。

解決方案

如果要解決這個問題,請依照下列步驟執行。

  1. 重新開機網域控制器。

  2. 當 BIOS 信息出現時,請按 F8。

  3. 取 [目錄服務還原模式],然後按 ENTER。

  4. 使用目錄服務還原模式密碼登入。

  5. 按兩下 [開始],選取 [執行],在 [啟] 方塊中輸入 cmd,然後按兩下 [確定]

  6. 在命令提示字元中,輸入 ntdsutil 檔案資訊

    如下所示的輸出隨即出現:

    磁碟驅動器資訊:

    C:\ NTFS (固定磁碟 ) 免費 (533.3 Mb) 總計 (4.1 Gb)

    DS 路徑資訊:

    資料庫:C:\WINDOWS\NTDS\ntds.dit - 10.1 Mb Backup dir: C:\WINDOWS\NTDS\dsadata.bak Working dir: C:\WINDOWS\NTDS Log dir : C:\WINDOWS\NTDS - 42.0 1 Mb 總計 temp.edb - 2.1 Mb res2.log - 10.0 Mb res1.log - 10.0 Mb edb00001.log - 10.0 Mb edb.log - 10.0 Mb

    注意事項

    此輸出包含的檔案位置也可在下列登入子機碼中找到:
    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\NTDS\Parameters

    此索引鍵中的下列專案包含檔案位置:

    • 資料庫備份路徑
    • 資料庫記錄檔路徑
    • DSA 工作目錄
  7. 確認步驟 6 中輸出中列出的檔案存在。

  8. 確認 Ntdsutil 輸出中的資料夾具有正確的許可權。 下表中指定了正確的許可權。

    Windows Server 2003

    帳戶 權限 繼承
    系統 完全控制 此資料夾、子資料夾和檔案
    系統管理員 完全控制 此資料夾、子資料夾和檔案
    建立者擁有者 完全控制 僅限子資料夾和檔案
    本地服務 建立資料夾/附加數據 此資料夾和子資料夾

    Windows 2000

    帳戶 權限 繼承
    系統管理員 完全控制 此資料夾、子資料夾和檔案
    系統 完全控制 此資料夾、子資料夾和檔案

    注意事項

    此外,系統帳戶需要下列資料夾的完全控制許可權:

    • 包含 Ntds 資料夾的磁碟驅動器根目錄
    • %WINDIR% 資料夾

    在 Windows Server 2003 中,%WINDIR% 資料夾的預設位置是 C:\WINDOWS。 在 Windows 2000 中,%WINDIR% 資料夾的預設位置是 C:\WINNT。

  9. 檢查 Active Directory 資料庫的完整性。 若要這樣做,請在命令提示字元中輸入 ntdsutil 檔案完整性

    如果完整性檢查指出沒有錯誤,請在正常模式中重新啟動域控制器。 如果完整性檢查未完成且沒有發生錯誤,請繼續進行下列步驟。

  10. 執行語意資料庫分析。 若要這樣做,請在命令提示字元中輸入下列命令,包括引號:

    ntdsutil "sem d a" go
    
  11. 如果語意資料庫分析未指出任何錯誤,請繼續進行下列步驟。 如果分析報告任何錯誤,請在命令提示字元中輸入下列命令,包括引號:

    ntdsutil "sem d a" "go f"
    
  12. 請遵循下列 Microsoft 知識庫文章中的步驟,執行 Active Directory 資料庫的離線重組:

    232122 執行 Active Directory 資料庫的離線重組

  13. 如果在離線重組之後仍有問題,且相同網域中有其他功能域控制器,請從伺服器移除 Active Directory,然後重新安裝 Active Directory。 若要這樣做,請遵循下列 Microsoft 知識庫文章中一節中的步驟:

    332199 當您使用 Active Directory 安裝精靈在 Windows Server 2003 和 Windows 2000 Server 中強制降級時,域控制器不會正常降級

    注意事項

    如果您的域控制器正在執行 Microsoft Small Business Server,您就無法執行此步驟,因為 Small Business Server 無法新增至現有的網域作為複本) (額外的域控制器。 如果您的系統狀態備份比標記存留期還新,請還原該系統狀態備份,而不是從伺服器移除 Active Directory。 根據預設,標記存留期為 60 天。

  14. 如果沒有可用的系統狀態備份,而且網域中沒有其他狀況良好的域控制器,建議您移除 Active Directory,然後在伺服器上重新安裝 Active Directory,建立新的網域來重建網域。 您可以再次使用舊功能變數名稱,或使用新的功能變數名稱。 您也可以重新格式化並重新安裝伺服器上的 Windows 來重建網域。 不過,移除 Active Directory 會更快,並有效地移除損毀的 Active Directory 資料庫。

    如果沒有可用的系統狀態備份,網域中就不會有其他狀況良好的域控制器,而且您必須讓域控制器立即運作,使用 Ntdsutil 或 Esentutl 執行遺失修復。

    注意事項

    在使用 Ntdsutil 或 Esentutl 從 Active Directory 資料庫損毀復原之後,Microsoft 不支援域控制器。 如果您執行這種修復,您必須重建域控制器,Active Directory 才能處於支援的組態中。 Ntdsutil 中的 repair 命令會使用 Esentutl 公用程式來執行資料庫的遺失修復。 這種修復可藉由刪除資料庫中的數據來修正損毀。 請只使用這種修復作為最後手段。

    雖然域控制器可能會啟動,而且可能在修復后正常運作,但不支援其狀態,因為從資料庫中刪除的數據可能會造成任何數目的問題,直到稍後才會出現。 無法判斷修復資料庫時刪除了哪些數據。 修復之後,您必須儘快重建網域,才能將 Active Directory 傳回支援的組態。 如果您只使用本文所參考的離線重組或語意資料庫分析方法,之後就不需要重建域控制器。

  15. 在您執行遺失修復之前,請連絡 Microsoft 產品支援服務,確認您已檢閱所有可能的復原選項,並確認資料庫確實處於無法復原的狀態。 如需 Microsoft 產品支援服務電話號碼的完整清單,以及支援成本的相關信息,請造訪下列 Microsoft 網站:

    連絡 Microsoft 支援服務

    在 Windows 2000 伺服器型域控制器上,使用 Ntdsutil 復原 Active Directory 資料庫。 若要這樣做,請在目錄服務還原模式的命令提示字元中輸入 ntdsutil files repair

    若要執行 Windows Server 2003 域控制器的遺失修復,請使用 Esentutl.exe 工具來復原 Active Directory 資料庫。 若要這樣做,請在 Windows Server 2003 域控制器上的命令提示字元中輸入 esentutl /p

  16. 修復作業完成之後,請使用不同的擴展名重新命名NTDS資料夾中的.log檔,例如.bak,然後嘗試在一般模式中啟動域控制器。

  17. 如果您可以在修復后以正常模式啟動域控制器,請儘快將相關的Active Directory 物件移轉至新的樹系。 因為這個遺失修復方法會藉由刪除數據來修正損毀,所以可能會造成後續極難進行疑難解答的問題。 在修復之後的第一個機會,您必須重建網域,才能將Active Directory 帶回支持的設定。

    您可以使用 Active Directory 移轉工具 (ADMT) 、Ldifde 或非 Microsoft 移轉工具來移轉使用者、計算機和群組。 ADMT 可以移轉具有或不含 SID) 歷程記錄 (安全標識碼的使用者帳戶、計算機帳戶和安全組。 ADMT 也會移轉使用者配置檔。 To use ADMT in a Small Business Server environment, review the "Migrating from Small Business Server 2000 or Windows 2000 Server" white paper. 若要取得這份白皮書,請造訪下列 Microsoft 網站:

    從 Small Business Server 2000 或 Windows 2000 Server 移轉至 Windows Small Business Server 2003

    您可以使用 Ldifde,將許多類型的物件從損毀的網域匯出並匯入至新網域。 這些物件包括用戶帳戶、計算機帳戶、安全組、組織單位、Active Directory 網站、子網和網站連結。 Ldifde 無法移轉 SID 歷程記錄。 Ldifde 是 Windows 2000 Server 和 Windows Server 2003 的一部分。

    如需如何使用 Ldifde 的詳細資訊,請按下列文章編號以檢視 Microsoft 知識庫中的文章:

    237677 使用 Ldifde 將目錄物件匯入和匯出至 Active Directory

    您可以使用 群組原則 管理控制台 (GPMC) ,將組策略對象的文件系統和 Active Directory 部分從損毀的網域導出至新網域。

    若要取得 GPMC,請造訪下列 Microsoft 網站:

    雲端運算服務

    For information about how to migrate group policy objects by using the GPMC, review the "Migrate GPOs across domains with GPMC" white paper. 若要取得這份白皮書,請造訪下列 Microsoft 網站:

    跨網域移轉 GPO

  18. 復原之後,請評估目前的備份計劃,以確定您已頻繁地排程系統狀態備份。 至少每天或在每次重大變更之後排程系統狀態備份。 系統狀態備份必須包含必要的容錯層級。 例如,不要將備份儲存在與您要備份的電腦相同的磁碟驅動器上。 盡可能使用多個域控制器來避免單一失敗點。 將備份儲存在異地位置,讓網站災害 (引發、竊取、水流、計算機遭竊) 不會影響您的復原能力。 下列 Microsoft 網站可協助您開發備份計畫。