Active Directory 復寫錯誤 1127:存取硬碟時,磁碟作業失敗,即使在重試之後也一樣

本文說明 Active Directory 複寫失敗並出現 Win32 錯誤 1127 的問題:「存取硬碟時,磁碟作業即使在重試之後也失敗。」

適用:Windows Server 2012 R2
原始 KB 編號: 2025726

徵狀

本文說明 AD 作業因 Win32 錯誤 1127 而失敗時的徵兆、原因和解決步驟:「存取硬碟時,磁碟作業即使在重試之後也失敗。」

  1. 新域控制器的 DCPROMO 升級失敗,錯誤為 1127:存取硬碟時,磁碟作業即使在重試之後仍失敗

    顯示在 DCPROMO 中的畫面上錯誤為:

    對話框標題文字:Active Directory 安裝精靈
    訊息正文:

    工作失敗,因為:
    Active Directory 無法從協助程式 DC> 的遠端域控制器<完整計算機名稱複寫失敗資料分割>的目錄分割 <DN 路徑。
    「存取硬碟時,磁碟作業即使在重試之後也失敗。」DCPROMO。LOG 包含下列文字:
    [INFO]複寫 <數據分割名稱> 目錄分割區
    [INFO]錯誤 - Active Directory 無法從遠端域控制器<協助程式 DC> 複寫目錄分割區 <DN>。 (1127)
    [INFO]傳回 1127 的 DNS 網域> NtdsInstall <
    [INFO]DsRolepInstallDs 傳回 1127 [ERROR] 無法安裝到目錄服務 (1127)

  2. DCDIAG 報告 Active Directory 複寫測試失敗,錯誤狀態 (1127) :存取硬碟時,磁碟作業即使在重試之後仍失敗

    DCDIAG 的錯誤文字範例如下所示:

    測試伺服器: <月臺><DC 名稱>
    開始測試:複寫
    * 複寫檢查
    [複寫檢查,<DC 名稱>] 最近的複寫嘗試失敗:
    從 <來源 DC> 到 <目的地 DC>
    命名內容:DC=<DN 路徑>
    複寫 (1127) 產生錯誤:
    存取硬碟時,磁碟作業即使在重試之後也失敗。
    失敗發生在 <日期><時間>。
    上次成功發生於 (永不) | <date>。

  3. REPADMIN.EXE 報告上次復寫嘗試失敗,狀態為 1127

    通常會指出 1127 狀態的 REPADMIN 命令包含但不限於:

    • REPADMIN /REPLSUM
    • REPADMIN /SHOWREPL
    • REPADMIN /SHOWREPS
    • REPADMIN /SYNCALL
  4. Active Directory 月臺和服務中的 [立即復寫] 命令 (DSSITE。MSC) 失敗,並出現螢幕錯誤「存取硬碟時,即使重試之後磁碟作業也失敗」

    對話框標題:立即複寫
    消息正文:嘗試從域控制器<來源DC同步處理目錄分割>的命名內容 <DNS 名稱時發生下列錯誤>
    至域控制器 <目的地 DC>:
    存取硬碟時,磁碟作業即使在重試之後也失敗。
    此作業將不會繼續。

  5. 目錄服務事件記錄檔中的事件會顯示錯誤狀態 1127

    通常會指出 1127 狀態的事件包括但不限於:

    事件來源和事件標識碼 訊息字串
    NTDS KCC 1926 嘗試使用下列參數建立唯讀目錄分割區的複寫連結失敗
    NTDS 複寫 1084 內部事件:Active Directory 無法使用從下列來源域控制器收到的變更來更新下列物件。 這是因為在域控制器上將變更套用至 Active Directory 期間發生錯誤。
    NTDS 複寫 1699 本機域控制器無法擷取下列目錄分割區所要求的變更。 因此,它無法在下列網路位址將變更要求傳送至域控制器。
    NTDS 複寫 2108 此事件包含先前記錄之 1084 事件的 REPAIR PROCEDURES。 此訊息指出此復寫目的地上 Active Directory 資料庫一致性的特定問題。 將復寫的變更套用至下列物件時發生資料庫錯誤。 資料庫有非預期的內容,因此無法進行變更。
  6. NTDS 複寫事件 2108 可能會記錄在目錄服務事件記錄檔中,而此事件記錄檔包含物件、來源 DC 和 jet 錯誤,而此錯誤會觸發螢幕錯誤、記錄事件和診斷工具輸出中 1127 狀態的記錄。

    已知會出現在 NTDS 複寫事件 2108 中且狀態為 1127 的 Jet 錯誤包括但不限於:

    Jet 錯誤 (十進位) 符號錯誤 錯誤字串
    -510 JET_errLogWriteFail 寫入記錄檔失敗
    -1018 JET_errReadVerifyFailure 資料庫頁面上的總和檢查碼錯誤
    -1019 JET_errPageNotInitialized 空白資料庫頁面
    -1021 JET_errDiskReadVerificationFailure OS 從檔案 IO 傳回ERROR_CRC
    -1022 JET_errDiskIO 磁碟 IO 錯誤
    -1605 JET_errKeyDuplicate 不合法的重複金鑰
  7. NTDS ISAM 事件可能會記錄在 Directory Services 事件記錄檔中,指出與其他螢幕錯誤、記錄的事件和診斷工具輸出中出現的 1127 狀態相關的 Jet 錯誤是否存在

    事件來源 + 事件識別碼 事件文字
    NTDS ISAM 474 從檔案<磁碟驅動器讀取的資料庫頁面:\path\ntds.dit>,位移<十進位位>移 (<十進位頁面大小的十六進位頁面位>移>) <, (<十六進位頁面大小>) 位元組無法驗證到頁面總和檢查碼不相符。...讀取作業將會失敗,並出現十進位 jet 錯誤 <> (<十六進位 jet 錯誤>) 。 ). 如果此條件持續存在,請從先前的備份還原資料庫。 此問題可能是因為硬體故障所造成。 請連絡您的硬體廠商,以取得診斷問題的進一步協助。
    NTDS ISAM 475 從檔案<磁碟驅動器讀取的資料庫頁面:\path\ntds.dit>,位移<十進位位移> (<十進位頁面大小的十六進位頁面位>移>) <, (<十六進位頁面大小>) 位元組驗證失敗,無法驗證到頁碼不符...。讀取作業將會失敗,並出現十進位 jet 錯誤 <> (<十六進位 jet 錯誤>) 。 ). 如果此條件持續存在,請從先前的備份還原資料庫。 此問題可能是因為硬體故障所造成。 請連絡您的硬體廠商,以取得診斷問題的進一步協助。

原因

Active Directory 無法寫入 Active Directory 資料庫或記錄檔。 根本原因包括:

  1. 本機電腦上的軟體會干擾 Active Directory 將變更寫入 Active Directory 資料庫和/或記錄檔的能力
  2. 磁碟子系統中有瑕疵品,包括主機板/驅動程式控制器、韌體、驅動程式、實體磁碟驅動器。

解決方案

  1. 在目錄服務事件記錄檔中找出NTDS複寫事件1084事件

    針對記錄 1127 狀態的 DC,請開啟目錄服務事件記錄檔,並專注於 NTDS 複寫事件 1084。

    NTDS 複寫事件 1084 表示 Active Directory 無法將更新寫入其 Active Directory 本地副本中的物件。

    事件 1084 中的元數據會識別 (1.) DN 路徑 (,因此物件主控數據分割) 無法更新, (2.) 問題物件的 objectGUID, (3.) 傳送更新之來源 DC 的完整 CNAME 記錄

  2. 找出緊接在每個 NTDS 複寫 1084 事件之後立即記錄的 NTDS 複寫事件 2108,並識別 2108 事件中記錄的 jet 錯誤。

    NTDS 複寫事件 2108 是 NTDS 複寫 1084 事件的「用戶動作」。

    針對每個記錄的 NTDS 複寫 1084 事件,應該會在 Directory Services 事件記錄檔中記錄對應的 NTDS 複寫 2108 事件,該事件會 (1.) 相同的物件 DN 路徑和 (2.) objectguid 和 (3.) 源 DC,記錄在上述 NTDS 複寫 1084 事件中,以及定義/範圍原因的 jet 錯誤,以及解決錯誤狀況的復原計劃。

  3. 針對 NTDS 複寫事件 2108 中記錄的 Jet 錯誤執行行動計劃:

    如果下表列出記錄在NTDS複寫事件中的 Jet 錯誤,請執行使用者動作,否則請跳至步驟 4:

    Jet 錯誤 (十進位) 符號錯誤 + 錯誤字串 用戶動作
    -510 JET_errLogWriteFail /
    寫入記錄檔失敗
    目的地 DC 發生記錄寫入失敗。

    檢查目的地DC上的磁碟、磁碟分區和文件系統健康情況。

    檢查可能在 Active Directory 記錄檔上建立鎖定的軟體,例如目的地 DC 上的防病毒軟體。

    查看重新啟動后問題是否持續發生,或嘗試全新開機

    方法 1:停止在文件系統中建立檔案鎖定的服務,並特別著重於防病毒軟體。

    方法 2:在 OS 開機期間按 F8,然後選擇 [具有網路的安全模式]。

    方法 3:停用非開機相關的第三方服務。 重新啟動。

    Windows 金鑰 + R -> MSCONFIG -> 服務索引標籤 - > 隱藏所有 Microsoft
    服務 -> 停用第三方服務的複選框

    Windows 金鑰 + R -> MSCONFIG -> 啟動索引標籤 - > 隱藏所有 Microsoft
    服務 -> 按兩下 [全部停用]
    -1018 JET_errReadVerifyFailure /
    資料庫頁面上的總和檢查碼錯誤
    資料庫損毀

    硬體故障所造成的錯誤。

    評估磁碟堆疊,包括主機板/控制器、韌體、連接纜線和實體磁碟驅動器,並連絡相關廠商以瞭解已知問題。 比較目前的組態與廠商參考組態。

    評估問題是否可由最新的韌體更新解決,或由最近的韌體更新觸發。

    如果某些 DC 記錄 -1018 秒,而相同環境中的其他 DC 則不是,請尋找硬體設定的差異。

    在 NTDSUTIL 或 ESENTUTL 中,完整性檢查或語意資料庫分析無法復原或修復記錄此錯誤的資料庫。

    離線重組在不太可能的問題是由索引一致性問題所造成的情況下解決。

    請嘗試脫機重組,否則請還原系統狀態備份,以在損毀之前,或強制降級、執行完整元數據清除,然後重新升級。 如果出現 -1018 錯誤,請重複直到解決硬體根本原因為止。

    一位客戶回報只有在使用內部部署 Raid 控制器的電腦上,相同虛擬主機上執行的虛擬化 DC 上發生 Jet 錯誤 -1018s。 目前的想法是 UPS 缺少足夠的電源,無法讓上架的 Raid 控制器在電力中斷后認可磁碟的變更。 因應措施是將 UPS 軟體設定為在電力中斷時關閉虛擬化來賓。 具有專用 (的伺服器未上線,) 具有自己的電池備份的 raid 控制器不會發生 -1018 jet 錯誤。
    -1019 JET_errPageNotInitialized /
    空白資料庫頁面
    類似於 -1018 錯誤,但因頁面排清遺失所造成。

    遺失的排清可能代表重大的USN變更。 如果單一復寫路徑存在,則無法將相同專案套用至本機 DC 或可轉移的復寫夥伴可能會有害。

    在伺服器類別硬體和磁碟子系統元件上部署 OS

    在主電腦上安裝UPS。

    安裝具有上線電池備份的磁碟控制器。

    停用磁碟驅動器控制器上的回寫快取。

    避免放置 NTDS。IDE 磁碟驅動器上的 DIT 和 LOG 檔案

    在 NTDSUTIL 或 ESENTUTL 中,完整性檢查或語意資料庫分析無法復原或修復記錄此錯誤的資料庫。

    離線重組可能會在不太可能的問題是由索引一致性問題所造成的情況下解決問題。

    請嘗試脫機重組,否則請還原系統狀態備份,以在損毀之前,或強制降級、執行完整元數據清除,然後重新升級。 重複執行,直到解決硬體根本原因為止。
    -1021 JET_errDiskReadVerificationFailure/OS 從檔案 IO 傳回ERROR_CRC Jet 錯誤 -1021 是 Windows Server 2008 R2 的新功能。

    在此情況下,Windows Server 2008 R2 之前操作系統會傳回 -1022。

    -1021 識別磁碟層級發生 -1018 錯誤。 Restated, -1021 表示磁碟驅動器傳回錯誤的檢查總和錯誤,且是磁碟堆疊中問題的特定來源。

    問題可能是硬碟上硬碟上可能追蹤到的不正確區塊所造成。

    降級和重新升級域控制器可能會觸發在狀況良好的區塊上儲存數據。
    -1022 JET_errDiskIO/ 磁碟 IO 錯誤 一般磁碟錯誤

    磁碟 IO 錯誤表示 OS 在存取磁碟時遇到非特定錯誤。 當控制器傳回一般錯誤,例如「裝置無法運作」時,可能會記錄此錯誤。 某些磁碟和 Jet 版本會針對 CRC 問題傳回此錯誤。

    確認整個驅動程式堆疊。
    -1605 JET_errKeyDuplicate/ 不合法的重複金鑰 偶發性錯誤。
    降級並重新保護。
    可能是索引損毀所造成。
    執行 NTDUSITL 語意資料庫分析。 如果仍未解決,請執行脫機重組。
  4. 如果上述數據表中 NTDS 複寫事件中的 Jet 錯誤不是,請驗證垂直 Jet 資料庫堆疊

    如果 2108 事件記錄數據表中未引用的 jet 錯誤,請使用 Microsoft Exchange Server Error Code Look-up 公用程式,使用 “err <jet error>” 語法,將 jet 錯誤解析為其符號和易記錯誤字符串。 使用 ERR.EXE 解析 jet 錯誤時,請務必新增前置 “-” 前置詞字元。 例如 (「c:\>err -1018」) 。

    NTDS 複寫事件 2108 中的事件消息正文包含 NTDS 複寫 1084 事件的部分使用者動作。

    NTDS 複寫 2108 使用者動作記載於連結的 KB 文章 MSKB 837932中。 如果上述數據表中未提及您事件的使用者動作,請在 MSKB 中執行修改過的動作計劃版本 ,837932 方法是從下到上驗證垂直 jet 資料庫堆疊 (只有在基礎層簽出「良好」) 時,才會繼續到下一層,就像您使用 TCP 一樣。

    Layer NTDSUTIL 命令 ESENTTUL 命令
    (1.) 實體一致性 沒有對等專案 ESENTUTL /K
    (2.) ESE 邏輯一致性 NTDSUTIL 檔案完整性 ESENTUTL /G
    (3.) 應用程式邏輯一致性 NTDSUTIL ->語意資料庫分析

    +

    NTDSUTIL -> 脫機重組
    沒有 SDA 的對等專案


    +

    ESENTUTL / D

資料收集

如果您需要 Microsoft 支援的協助,建議您依照 使用 TSS 針對 Active Directory 複寫問題收集資訊中所述的步驟來收集資訊。