如何將 Windows 2000 域控制器升級至 Windows Server 2003

本文討論如何將 Microsoft Windows 2000 域控制器升級至 Windows Server 2003,以及如何將新的 Windows Server 2003 域控制器新增至 Windows 2000 網域。

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

摘要

本文討論如何將 Microsoft Windows 2000 域控制器升級至 Windows Server 2003,以及如何將新的 Windows Server 2003 域控制器新增至 Windows 2000 網域。 如需如何將域控制器升級至 Windows Server 2008 或 Windows Server 2008 R2 的詳細資訊,請造訪下列 Microsoft 網站:

升級域控制器:Microsoft 支援服務 將 Windows Server 2008 或 Windows Server 2008 R2 域控制器新增至現有網域的快速入門

網域和樹系清查

將 Windows 2000 域控制器升級至 Windows Server 2003 或將新的 Windows Server 2003 域控制器新增至 Windows 2000 網域之前,請遵循下列步驟:

  1. 清查存取裝載 Windows Server 2003 域控制器之網域中資源的用戶端,以與 SMB 簽署相容:

    每個 Windows Server 2003 域控制器都會在其本機安全策略中啟用 SMB 簽署。 請確定所有使用SMB/CIFS通訊協定來存取主控 Windows Server 2003 域控制器之網域中共用檔案和印表機的網路用戶端,都可以設定或升級以支援 SMB 簽署。 如果無法,請暫時停用SMB簽署,直到可以安裝更新,或直到用戶端可以升級至支援SMB簽署的較新作業系統為止。 如需如何停用 SMB 簽署的資訊,請參閱此步驟結尾的停 用 SMB 簽署 一節。

    行動計劃

    下列清單顯示熱門SMB客戶端的行動計劃:

    • Microsoft Windows Server 2003、Microsoft Windows XP Professional、Microsoft Windows 2000 Server、Microsoft Windows 2000 Professional 和 Microsoft Windows 98

      不用執行任何動作。

    • Microsoft Windows NT 4.0 建議) 存取包含 Windows Server 2003 型電腦之網域的所有 Windows NT 4.0 型計算機上,安裝 Service Pack 3 或更新版本 (Service Pack 6A。 而是暫時停用 Windows Server 2003 域控制器上的 SMB 簽署。 如需如何停用 SMB 簽署的資訊,請參閱此步驟結尾的停 用 SMB 簽署 一節。

    • Microsoft Windows 95

      在 Windows 95 型電腦上安裝 Windows 9 x 目錄服務用戶端,或暫時停用 Windows Server 2003 域控制器上的 SMB 簽署。 原始 Win9 x 目錄服務用戶端可在 Windows 2000 Server CD-ROM 上取得。 不過,該用戶端附加元件已由改良的 Win9 x 目錄服務用戶端取代。 如需如何停用 SMB 簽署的資訊,請參閱此步驟結尾的停 用 SMB 簽署 一節。

    • 適用於 MS-DOS 和 Microsoft LAN Manager 用戶端的 Microsoft 網路用戶端

      適用於 MS-DOS 的 Microsoft 網路用戶端和 Microsoft LAN Manager 2.x 網路用戶端可用來提供網路資源的存取權,也可以與可開機磁碟結合,將操作系統檔案和其他檔案從檔伺服器上的共用目錄複製為軟體安裝例程的一部分。 這些客戶端不支援SMB簽署。 使用替代安裝方法,或停用SMB簽署。 如需如何停用 SMB 簽署的資訊,請參閱此步驟結尾的停 用 SMB 簽署 一節。

    • Macintosh 用戶端

      有些 Macintosh 用戶端與 SMB 簽署不相容,而且當他們嘗試連線到網路資源時,將會收到下列錯誤訊息:

      - 錯誤 -36 I/O

      如果已更新的軟體可供使用,請加以安裝。 否則,請停用 Windows Server 2003 域控制器上的 SMB 簽署。 如需如何停用 SMB 簽署的資訊,請參閱此步驟結尾的停 用 SMB 簽署 一節。

    • 其他第三方SMB用戶端

      有些第三方SMB用戶端不支援SMB簽署。 請洽詢您的SMB提供者,以查看更新的版本是否存在。 否則,請停用 Windows Server 2003 域控制器上的 SMB 簽署。

    停用SMB簽署

    如果無法在執行 Windows 95、Windows NT 4.0 或其他在 Windows Server 2003 推出之前安裝的其他用戶端上安裝軟體更新,請暫時停用 群組原則 中的 SMB 服務簽署需求,直到您部署更新的用戶端軟體為止。

    您可以在域控制器組織單位的下列預設域控制器原則節點中停用 SMB 服務登入:計算機設定\Windows 設定\安全性設定\本機原則\安全性選項\Microsoft 網路伺服器:

    數字簽署通訊 (一律)

    如果域控制器不在域控制器的組織單位中,您必須將預設域控制器的 群組原則 物件 (GPO) 連結至裝載 Windows 2000 或 Windows Server 2003 域控制器的所有組織單位。 或者,您可以在連結至這些組織單位的 GPO 中設定 SMB 服務簽署。

  2. 清查網域和樹系中的域控制器:

    1. 請確定樹系中的所有 Windows 2000 域控制器都已安裝所有適當的 Hotfix 和 Service Pack。

      Microsoft 建議所有 Windows 2000 域控制器執行 Windows 2000 Service Pack 4 (SP4) 或更新版本的操作系統。 如果您無法完全部署 Windows 2000 SP4 或更新版本,則所有 Windows 2000 域控制器 都必須 有日期戳記和版本晚於 2001 年 6 月 4 日和 5.0.2195.3673 的 Ntdsa.dll 檔案。

      根據預設,Windows 2000 SP4、Windows XP 和 Windows Server 2003 用戶端電腦上的 Active Directory 系統管理工具會使用輕量型目錄存取通訊協定 (LDAP) 簽署。 如果這類計算機在遠端管理 Windows 2000 域控制器時使用 (或切換回) NTLM 驗證,連線將無法運作。 若要解決此行為,遠端管理的域控制器至少應安裝 Windows 2000 SP3。 否則,您應該在執行系統管理工具的用戶端上關閉 LDAP 簽署。

      下列案例使用 NTLM 驗證:

      • 您管理位於由 NTLM 連線外部樹系中的 Windows 2000 域控制器 (非 Kerberos) 信任。
      • 您會將 Microsoft Management Console (MMC) 嵌入式管理單元,放在其 IP 位址所參考的特定域控制器上。 例如,您按兩下列指令 [執行],然後輸入下列命令:dsa.msc /server=ipaddress

      若要判斷 Active Directory 網域中 Active Directory 域控制器的操作系統和 Service Pack 修訂層級,請在樹系中的 Windows XP Professional 或 Windows Server 2003 成員計算機上安裝 Windows Server 2003 版本的 Repadmin.exe,然後針對樹系中每個網域的域控制器執行下列 repadmin 命令:

      >repadmin /showattr <name of the domain controller that is in the target domain> ncobj:domain: /filter:"(&(objectCategory=computer)(primaryGroupID=516))" /subtree /atts:operatingSystem,operatingSystemVersion,operatingSystemServicePack
      
      DN: CN=NA-DC-01,organizational unit=Domain Controllers,DC=company,DC=com
       1> operatingSystem: Windows Server 2003
       1> operatingSystemVersion: 5.2 (3718)
      DN: CN=NA-DC-02,organizational unit=Domain Controllers,DC=company,DC=com
       1> operatingSystem: Windows 2000 Server
       1> operatingSystemVersion: 5.0 (2195)
       1> operatingSystemServicePack: Service Pack 1
      

      注意事項

      域控制器的屬性不會追蹤個別 Hotfix 的安裝。

    2. 確認整個樹系的端對端 Active Directory 複寫。

      確認升級樹系中的每個域控制器,都會與其合作夥伴一致地復寫其所有本機保留的命名內容,以及月台連結或連接物件所定義的排程。 在樹系中以 Windows XP 或 Windows Server 2003 為基礎的成員電腦上,使用 Windows Server 2003 版本的 Repadmin.exe,並具有下列自變數:樹系中的所有域控制器都必須復寫 Active Directory 而不會發生錯誤,而且 repadmin 輸出之 [最大差異] 數據行中的值不應明顯大於指定目的地網域所使用之對應網站鏈接或連接物件上的復寫頻率控制器。

      解決在 TSL (TSL) 預設 (60 天以下無法輸入複寫之域控制器之間的所有復寫錯誤,) 60 天。 如果復寫無法運作,您可能必須強制降級域控制器,並使用 Ntdsutil 元數據清除命令將其從樹系中移除,然後將它們升級回樹系。 您可以使用強制降級來儲存作業系統安裝和孤立域控制器上的程式。 如需如何從其網域移除孤立的 Windows 2000 域控制器的詳細資訊,請按下列文章編號以檢視 Microsoft 知識庫中的文章:

      216498 如何在域控制器降級失敗后移除 Active Directory 中的數據

      請只採取此動作作為復原操作系統和已安裝程式安裝的最後手段。 您將會遺失孤立域控制器上未復寫的對象和屬性,包括使用者、計算機、信任關係、其密碼、群組和群組成員資格。

      當您嘗試解決域控制器的復寫錯誤時,如果域控制器的輸入變更未針對特定 Active Directory 分割區複寫超過 標記生命時間 天數,請小心。 當您這樣做時,您可以重新建立在一個域控制器上刪除,但直接或可轉移復寫夥伴過去 60 天內從未收到刪除的物件。

      請考慮移除過去 60 天內未執行輸入複寫之域控制器上的任何停留物件。 或者,您可以強制降級未在標記存留期天數內對指定分割區執行任何輸入複寫的域控制器,並使用 Ntdsutil 和其他公用程式從 Active Directory 樹系移除其剩餘元數據。 如需其他協助,請連絡您的支援提供者或 Microsoft PSS。

    3. 確認 Sysvol 共用的內容一致。

      確認組策略的文件系統部分是一致的。 您可以使用 Resource Kit 中的 Gpotool.exe 來判斷跨網域的原則是否有不一致的情況。 使用 Windows Server 2003 支援工具的 Healthcheck,判斷 Sysvol 共用複本集是否在每個網域中正常運作。

      如果 Sysvol 共用的內容不一致,請解決所有不一致的問題。

    4. 使用支援工具中的 Dcdiag.exe,確認所有域控制器都有共用的 Netlogon 和 Sysvol 共用。 若要這樣做,請在命令提示字元中輸入下列命令:

      DCDIAG.EXE /e /test:frssysvol
      
    5. 清查作業角色。

      架構和基礎結構作業主機可用來引進樹系和整個網域的架構變更,這些樹系及其網域是由 Windows Server 2003 adprep 公用程式所進行。 確認為樹系中每個網域裝載架構角色和基礎結構角色的域控制器位於即時域控制器上,而且每個角色擁有者自從上次重新啟動之後,已對所有數據分割執行輸入複寫。

      命令 DCDIAG /test:FSMOCHECK 可用來檢視全樹系和全網域的作業角色。 位於不存在域控制器上的作業主機角色,應該使用NTDSUTIL,將它提供給狀況良好的域控制器。 如果可能的話,應該轉移位於狀況不良域控制器上的角色。 否則,它們應該很按兩下。 命令 NETDOM QUERY FSMO 不會識別位於已刪除域控制器上的 FSMO 角色。

      確認 自上次開機後, 已執行 Active Directory 的輸入複寫。 您可以使用 REPADMIN /SHOWREPS DCNAME 命令來驗證輸入複寫,其中 DCNAME 是 NetBIOS 計算機名稱或域控制器的完整電腦名稱。 如需作業主機及其位置的詳細資訊,請按下列文章編號以檢視 Microsoft 知識庫中的文章:

      197132 Windows 2000 Active Directory FSMO 角色

      223346 Active Directory 域控制器上的 FSMO 放置和優化

    6. EventLog 檢閱

      檢查所有域控制器上的事件記錄檔,以取得有問題的事件。 事件記錄檔不能包含嚴重事件訊息,指出下列任何進程和元件發生問題:

      實體連線能力
      網路連線能力
      名稱註冊
      名稱解析
      認證
      群組原則
      安全策略
      磁碟子系統
      模式
      拓撲
      複寫引擎

    7. 磁碟空間清查

      裝載 Active Directory 資料庫檔案 Ntds.dit 的磁碟區,其可用空間必須至少等於 Ntds.dit 檔案大小的 15-20%。 裝載 Active Directory 記錄檔的磁碟區也必須具有至少 15-20% Ntds.dit 檔案大小的可用空間。 如需如何釋放額外磁碟空間的詳細資訊,請參閱本文的一節。

    8. DNS 清除 (選擇性)

      針對樹系中的所有 DNS 伺服器,以 7 天間隔啟用 DNS 清除。 為了獲得最佳結果,請在升級操作系統前 61 天或 61 天以上執行此作業。 這會在 Ntds.dit 檔案上執行離線重組時,為 DNS 清除精靈提供足夠的時間來垃圾收集過時的 DNS 物件。

    9. 停用 DLT Server Service (選用)

      新的和升級的 Windows Server 2003 域控制器安裝會停用 DLT Server 服務。 如果未使用分散式連結追蹤,您可以在 Windows 2000 域控制器上停用 DLT 伺服器服務,並開始從樹系中的每個網域刪除 DLT 物件。 For more information, see the "Microsoft Recommendations for distributed link tracking" section of the following article in the Microsoft Knowledge Base: 312403 Distributed Link Tracking on Windows-based domain controllers

    10. 系統狀態備份

      在樹系的每個網域中,至少備份兩個域控制器的系統狀態備份。 如果升級無法運作,您可以使用備份來復原樹系中的所有網域。

Windows 2000 樹系中的 Microsoft Exchange 2000

注意事項

  • 如果已在 Windows 2000 樹系中安裝或將安裝 Exchange 2000 Server,請先閱讀本節,再執行 Windows Server 2003 adprep /forestprep 命令。
  • If Microsoft Exchange Server 2003 schema changes will be installed, go to the "Overview: Upgrading Windows 2000 domain controllers to Windows Server 2003" section before you run the Windows Server 2003 adprep commands.

Exchange 2000 架構會定義三個 inetOrgPerson 屬性,其中包含不要求批註 (RFC) 相容 LDAPDisplayNames:houseIdentifier、community 和 labeledURI。

Windows 2000 inetOrgPerson 套件和 Windows Server 2003 adprep 命令會定義與不符合 RFC 規範之版本相同之 LDAPDisplayNames 之相同三個屬性的 RFC-規範版本。

當 Windows Server 2003 adprep /forestprep 命令在沒有包含 Windows 2000 和 Exchange 2000 架構的樹系中沒有更正腳本的情況下執行時,houseIdentifier、labeledURI 和區屬性的 LDAPDisplayNames 會變成受控。 如果 「Dup」 或其他唯一字元加入衝突屬性名稱的開頭,讓目錄中的物件和屬性具有唯一名稱,則屬性會變成「受控」。

在下列情況下,Active Directory 樹系不易遭受這些屬性的 LDAPDisplayNames 管理:

  • 如果您在加入 Exchange 2000 架構之前,先在包含 Windows 2000 架構的樹系中執行 Windows Server 2003 adprep /forestprep 命令。
  • 如果您在建立的樹系中安裝 Exchange 2000 架構,其中 Windows Server 2003 域控制器是樹系中的第一個域控制器。
  • 如果您將 Windows 2000 inetOrgPerson Kit 新增至包含 Windows 2000 架構的樹系,然後安裝 Exchange 2000 架構變更,然後執行 Windows Server 2003 adprep /forestprep 命令。
  • 如果您將 Exchange 2000 架構新增至現有的 Windows 2000 樹系,請先執行 Exchange 2003 /forestprep,再執行 Windows Server 2003 adprep /forestprep 命令。

在下列情況下,Windows 2000 中將會發生受控屬性:

  • 如果您在安裝 Windows 2000 inetOrgPerson 套件之前,先將 Exchange 2000 版本的 labeledURI、houseIdentifier 和區屬性新增至 Windows 2000 樹系。
  • 在執行 Windows Server 2003 adprep /forestprep 命令之前,您必須先將 Exchange 2000 版本的 labeledURI、houseIdentifier 和區屬性新增至 Windows 2000 樹系,而不需先執行清除腳本。 每個案例的行動計劃如下:

案例 1:執行 Windows Server 2003 adprep /forestprep 命令之後,會新增 Exchange 2000 架構變更

如果在執行 Windows Server 2003 adprep /forestprep 命令之後,Exchange 2000 架構變更會導入您的 Windows 2000 樹系,則不需要清除。 Go to the "Overview: Upgrading Windows 2000 domain controllers to Windows Server 2003" section.

案例 2:在 Windows Server 2003 adprep /forestprep 命令之前,將會安裝 Exchange 2000 架構變更

如果已安裝 Exchange 2000 架構變更,但您尚未執行 Windows Server 2003 adprep /forestprep 命令,請考慮下列行動計劃:

  1. 使用屬於 Schema Admins 安全組成員的帳戶,登入架構作業主機的控制台。

  2. 按兩下 [開始],按兩下 [執行],在 [啟] 方塊中輸入 notepad.exe,然後按兩下 [確定]

  3. 將下列文字,包括 「schemaUpdateNow: 1」 後面的尾端連字元複製到記事本。

    dn: CN=ms-Exch-Assistant-Name,CN=Schema,CN=Configuration,DC=X
    changetype:Modify
    replace:LDAPDisplayName
    LDAPDisplayName: msExchAssistantName
    -

    dn: CN=ms-Exch-LabeledURI,CN=Schema,CN=Configuration,DC=X
    changetype:Modify
    replace: LDAPDisplayName
    LDAPDisplayName: msExchLabeledURI
    -

    dn: CN=ms-Exch-House-Identifier,CN=Schema,CN=Configuration,DC=X
    changetype:Modify
    replace: LDAPDisplayName
    LDAPDisplayName: msExchHouseIdentifier
    -

    Dn:
    changetype:Modify
    add:schemaUpdateNow
    schemaUpdateNow:1
    -

  4. 確認每一行結尾沒有空格。

  5. 在 [ 檔案] 功能表上,按兩下 [ 儲存]。 在 [另存新檔] 對話方塊中執行下列步驟:

    1. 在 [ 檔名] 方塊中,輸入下列內容: \%userprofile%\InetOrgPersonPrevent.ldf
    2. 在 [ 另存新檔類型] 方 塊中,按兩下 [ 所有檔案]
    3. 在 [ 編碼] 方塊中,按兩下 [Unicode]
    4. 按一下儲存
    5. 結束記事本。
  6. 執行 InetOrgPersonPrevent.ldf 腳本。

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

    2. 在命令提示字元中輸入下列命令,然後按 ENTER: cd %userprofile%

    3. 輸入下列命令

    c:\documents and settings\%username%>ldifde -i -f inetorgpersonprevent.ldf -v -c DC=X "domain name path for forest root domain"
    

    語法附註:

    • DC=X 是區分大小寫的常數。
    • 根域的域名路徑必須以引號括住。

    例如,樹系根域 TAILSPINTOYS.COM 為之 Active Directory 樹系的命令語法為:

    c:\documents and settings\administrator>ldifde -i -f inetorgpersonprevent.ldf -v -c DC=X “dc=tailspintoys,dc=com”

    注意事項

    如果您收到下列錯誤訊息,您可能需要變更「架 構更新允許 的登錄」子機碼:此 DC 上不允許架構更新,因為未設定登錄機碼,或 DC 不是架構 FSMO 角色擁有者。

  7. 執行 Windows Server 2003 adprep /forestprep 命令之前,請確認架構命名內容中 CN=ms-Exch-Assistant-Name、CN=ms-Exch-LabeledURI 和 CN=ms-Exch-House-Identifier 屬性的 LDAPDisplayNames 現在會顯示為 msExchAssistantName、msExchLabeledURI 和 msExchHouseIdentifier。

  8. Go to the "Overview: Upgrading Windows 2000 domain controllers to Windows Server 2003" section to run the adprep /forestprep and /domainprep commands.

案例 3:執行 Windows Server 2003 forestprep 命令時未先執行 inetOrgPersonFix

如果您在包含 Exchange 2000 架構變更的 Windows 2000 樹系中執行 Windows Server 2003 adprep /forestprep 命令,則適用於 houseIdentifier、地道和標籤URI 的 LDAPDisplayName 屬性將會變成受控。 若要識別受控名稱,請使用 Ldp.exe 來找出受影響的屬性:

  1. 從 Microsoft Windows 2000 或 Windows Server 2003 媒體的 Support\Tools 資料夾安裝 Ldp.exe。

  2. 從樹系中的域控制器或成員計算機啟動 Ldp.exe。

    1. 在 [連線] 功能表上,按兩下 [連線],將 [伺服器] 方塊保留空白,在 [] 方塊中輸入 389,然後按下 [確定]
    2. 在 [ 連線] 功能表上,單擊 [ 系結],將所有方塊保留空白,然後按兩下 [ 確定]
  3. 記錄 SchemaNamingContext 屬性的辨別名稱路徑。 例如,針對 CORP.ADATUM.COM 樹系中的域控制器,辨別名稱路徑可能是 CN=Schema,CN=Configuration,DC=corp,DC=company,DC=com。

  4. 在 [ 流覽] 功能表上,單擊 [ 搜尋]

  5. 使用下列設定來設定 [ 搜尋 ] 對話框:

    • 基底 DN:步驟 3 中識別之架構命名內容的辨別名稱路徑。
    • 篩選: (ldapdisplayname=dup*)
    • 範圍:子樹
  6. 受管理的 houseIdentifier、區位和 labeledURI 屬性具有類似下列格式的 LDAPDisplayName 屬性:

    LDAPDisplayName: DUP-labeledURI-9591bbd3-d2a6-4669-afda-48af7c35507d;
    LDAPDisplayName: DUP-maker-c5a1240d-70c0-455c-9906-a4070602f85f
    LDAPDisplayName: DUP-houseIdentifier-354b0ca8-9b6c-4722-aae7-e66906cc9eef

  7. 如果在步驟 6 中管理 labeledURI、層代和 houseIdentifier 的 LDAPDisplayNames,請執行 Windows Server 2003 InetOrgPersonFix.ldf 腳本來復原,然後移至 [使用 Winnt32.exe 升級 Windows 2000 域控制器] 區段。

    1. 建立名為 %Systemdrive%\IOP 的資料夾,然後將 InetOrgPersonFix.ldf 檔案解壓縮至此資料夾。

    2. 在命令提示字元中, 輸入 cd %systemdrive%\iop

    3. 從位於 Windows Server 2003 安裝媒體的 Support\Tools 資料夾中的 Support.cab 檔案擷取 InetOrgPersonFix.ldf 檔案。

    4. 從架構作業主機的 控制台中,使用 Ldifde.exe 來載入 InetOrgPersonFix.ldf 檔案,以更正 houseIdentifier、層代和 labeledURI 屬性的 LdapDisplayName 屬性。 若要這樣做,請輸入下列命令,其中 <X> 是區分大小寫的常數,而 <樹系根域> 的 dn 路徑是樹系根域的功能變數名稱路徑:

      C:\IOP>ldifde -i -f inetorgpersonfix.ldf -v -c DC=X "domain name path for forest root domain"
      

      語法附註:

      • DC=X 是區分大小寫的常數。
      • 樹系根域的域名路徑必須以引弧括住。
  8. 安裝 Exchange 2000 之前,請確認架構命名內容中的 houseIdentifier、區位和 labeledURI 屬性並未「受控」。

概觀:將 Windows 2000 域控制器升級至 Windows Server 2003

您從 Windows Server 2003 adprep 媒體的 \I386 資料夾執行的 Windows Server 2003 命令會準備 Windows 2000 樹系及其網域,以新增 Windows Server 2003 域控制器。 Windows Server 2003 adprep /forestprep 命令會新增下列功能:

  • 改善物件類別的預設安全描述符

  • 新的使用者和群組屬性

  • 新的架構物件和屬性,例如 inetOrgPerson:adprep 公用程式支援兩個命令行自變數:

    • adprep /forestprep:執行樹系升級作業。
    • dprep /domainprep:執行網域升級作業。

adprep /forestprep 命令是在樹系的 FSMO) (架構作業主機上執行的一次性作業。 forestprep 作業必須先完成並復寫到每個網域的基礎結構主機,才能在該網域中執行 adprep /domainprep

adprep /domainprep 命令是您在樹系中每個網域的基礎結構作業主域控制器上執行的一次性作業,該網域將裝載新的或升級的 Windows Server 2003 域控制器。 命令 adprep /domainprep 會確認 forestprep 的變更已在網域分割區中復寫,然後對 Sysvol 共用中的網域分割區和組策略進行自己的變更。

除非 /forestprep 和 /domainprep 作業已完成並復寫到該網域中的所有域控制器,否則您無法執行下列其中一個動作:

  • 使用 Winnt32.exe,將 Windows 2000 域控制器升級至 Windows Server 2003 域控制器。

注意事項

您可以視需要將 Windows 2000 成員伺服器和電腦升級至 Windows Server 2003 成員電腦。 使用 Dcpromo.exe,將新的 Windows Server 2003 域控制器升級至網域。裝載架構作業主機的網域是唯一必須同時 adprep /forestprep 執行 和 adprep /domainprep的網域。 在所有其他網域中,您只需要執行 adprep /domainprep

adprep /forestprepadprep /domainprep 命令不會將屬性新增至全域編錄部分屬性集,也不會造成全域編錄的完整同步處理。 的 RTM 版本 adprep /domainprep 確實會造成 Sysvol 樹狀結構中 \Policies 資料夾的完整同步處理。 即使您執行 forestprep 和 domainprep 數次,完成的作業也只會執行一次。

adprep /forestprepadprep /domainprep 完全復寫變更之後,您可以從 Windows Server 2003 媒體的 \I386 資料夾執行 Winnt32.exe,將 Windows 2000 域控制器升級至 Windows Server 2003。 此外,您可以使用 Dcpromo.exe,將新的 Windows Server 2003 域控制器新增至網域。

使用 adprep /forestprep 命令升級樹系

若要準備 Windows 2000 樹系和網域以接受 Windows Server 2003 域控制器,請先在實驗室環境中,然後在生產環境中遵循下列步驟:

  1. 請確定您已完成「樹系清查」階段中的所有作業,並特別注意下列專案:

    1. 您已建立系統狀態備份。
    2. 樹系中的所有 Windows 2000 域控制器都已安裝所有適當的 Hotfix 和 Service Pack。
    3. Active Directory 的端對端複寫會在整個樹系中進行
    4. FRS 會在每個網域中正確復寫文件系統原則。
  2. 使用屬於 Schema Admins 安全組成員的帳戶登入架構作業主機的控制台。

  3. 在 Windows NT 命令提示字元中輸入下列命令,以確認架構 FSMO 已執行架構分割區的輸入複寫:repadmin /showreps

    ( 重設板由 Active Directory.) 的 Support\Tools 資料夾安裝

  4. 早期 Microsoft 檔建議您在執行 adprep /forestprep之前,先隔離專用網上的架構作業主機。 真實世界體驗表示此步驟並非必要,而且可能會導致架構作業主機在私人網路上重新啟動架構變更時拒絕架構變更。

  5. adprep 架構作業主機上執行 。 若要這樣做,請按兩下 [開始],按兩下 [ 執行],輸入 cmd,然後按兩下 [ 確定]。 在架構作業主機上,輸入下列命令:

     X:\I386\adprep /forestprep
    

    其中 X:\I386\ 是 Windows Server 2003 安裝媒體的路徑。 此命令會執行全樹系架構升級。

    注意事項

    記錄在目錄服務事件記錄檔中的事件標識碼為 1153 的事件,例如下列範例,可以忽略:

  6. 確認命令已 adprep /forestprep 在架構作業主機上成功執行。 若要這樣做,請從架構作業主機的主機的主機控制台確認下列專案: - adprep /forestprep 命令已完成,不會發生錯誤。 - CN=Windows2003Update 物件寫入 CN=ForestUpdates,CN=Configuration,DC= forest_root_domain。 記錄 Revision 屬性的值。 - (選擇性) 架構版本會遞增至第 30 版。 若要這樣做,請參閱 CN=Schema,CN=Configuration,DC= 下方的 ObjectVersion 屬性forest_root_domain。如果 adprep /forestprep 未執行,請確認下列專案:

    • 執行時 adprep ,已指定安裝媒體 \I386 資料夾中 Adprep.exe 的完整路徑。 若要這樣做,請輸入下列命令:

      x:\i386\adprep /forestprep
      

      其中 x 是裝載安裝媒體的磁碟驅動器。

    • 執行 adprep 的登入使用者具有 Schema Admins 安全組的成員資格。 若要確認這一點,請使用 whoami /all 命令。

    • 如果 adprep 仍然無法運作,請在 %systemroot%\System32\Debug\Adprep\Logs\Latest_log 資料夾中檢視Adprep.log 檔案。

  7. 如果您在步驟 4 的架構作業主機上停用輸出複寫,請啟用複寫,以便傳播 所 adprep /forestprep 進行的架構變更。 若要這樣做,請遵循下列步驟:

    1. 按兩下 [開始],按兩下 [ 執行],輸入 cmd,然後按兩下 [ 確定]
    2. 輸入下列內容,然後按 ENTER:repadmin /options -DISABLE_OUTBOUND_REPL
  8. 確認 adprep /forestprep 樹系中的所有域控制器上已復寫變更。 監視下列屬性很有用:

    1. 遞增架構版本
    2. CN=Windows2003Update、CN=ForestUpdates、CN=Configuration、DC= forest_root_domain 或 CN=Operations、CN=DomainUpdates、CN=System、DC= forest_root_domain ,以及其下方的作業 GUID 已復寫。
    3. 搜尋新的架構類別、對象、屬性或其他新增的變更 adprep /forestprep ,例如 inetOrgPerson。 檢視 Sch XX.ldf 檔案 (,其中 XX 是 %systemroot%\System32 資料夾仲介於 14 到 30) 之間的數位,以判斷應該有哪些物件和屬性。 例如,inetOrgPerson 定義於 Sch18.ldf 中。
  9. 尋找受管理的LDAPDisplayNames。 如果您找到受控名稱,請移至同一篇文章的案例 3。

  10. 使用主控架構作業主機之樹系的 Schema Admins 群組安全組成員帳戶,登入架構作業主機的控制台。

使用 adprep /domainprep 命令升級網域

adprep /domainprep在 /forestprep 變更完全復寫到將裝載 Windows Server 2003 域控制器之每個網域中的基礎結構主要域控制器之後執行。 若要這樣做,請遵循下列步驟:

  1. 在您要升級的網域中識別基礎結構主要域控制器,然後使用您要升級之網域中 Domain Admins 安全組成員的帳戶登入。

    注意事項

    企業系統管理員可能不是樹系子域中 Domain Admins 安全組的成員。

  2. adprep /domainprep 基礎結構主機上執行。 若要這樣做,請按兩下列指令 :執行],輸入 cmd,然後在 [基礎結構主機] 上輸入下列命令: X:\I386\adprep /domainprep 其中 X:\I386\ 是 Windows Server 2003 安裝媒體的路徑。 此命令會在目標網域中執行全網域變更。

    注意事項

    命令 adprep /domainprep 會修改 Sysvol 共用中的檔案許可權。 這些修改會導致完整同步處理該目錄樹狀結構中的檔案。

  3. 確認 domainprep 已順利完成。 若要這樣做,請確認下列專案:

    • 命令 adprep /domainprep 已完成,但不會發生錯誤。
    • CN=Windows2003Update,CN=DomainUpdates,CN=System,DC= 您要升級之網域的 dn 路徑 existsIf adprep /domainprep 未執行,請確認下列專案:
    • 執行的登入使用者 adprep 具有您要升級之網域中 Domain Admins 安全組的成員資格。 若要這樣做,請使用 whoami /all 命令。
    • 當您執行 adprep時,已指定安裝媒體之 \I386 目錄中 Adprep.exe 的完整路徑。 若要這樣做,請在命令提示字元中輸入下列命令: x :\i386\adprep /forestprep 其中 x 是裝載安裝媒體的磁碟驅動器。
    • 如果 adprep 仍然無法運作,請在 %systemroot%\System32\Debug\Adprep\Logs\ Latest_log 資料夾中檢視 Adprep.log 檔案。
  4. 確認 adprep /domainprep 已復寫變更。 若要這樣做,請針對網域中的其餘域控制器確認下列專案:- 正在升級物件之網域的 CN=Windows2003Update,CN=DomainUpdates,CN=System,DC= dn 路徑 存在,而 Revision 屬性的值符合網域基礎結構主機上相同屬性的值。 - (選擇性) 在新增的 ACL) 變更 adprep /domainprep (尋找物件、屬性或存取控制清單。 在其餘網域的基礎結構主機上大量重複步驟 1-4,或在您將這些網域中的 DC 新增至 Windows Server 2003 時重複步驟 1-4。 現在您可以使用 DCPROMO 將新的 Windows Server 2003 計算機升級到樹系。 或者,您可以使用 WINNT32.EXE,將現有的 Windows 2000 域控制器升級至 Windows Server 2003。

使用 Winnt32.exe 升級 Windows 2000 域控制器

在 /forestprep 和 /domainprep 的變更完全復寫且您已決定與舊版用戶端的安全性互操作性之後,您可以將 Windows 2000 域控制器升級至 Windows Server 2003,並將新的 Windows Server 2003 域控制器新增至網域。

下列電腦必須是每個網域中樹系中執行 Windows Server 2003 的第一個域控制器:

  • 樹系中的網域命名主機,讓您可以建立預設 DNS 程式分割區。
  • 樹系根域的主域控制器,讓 Windows Server 2003 的 forestprep 所新增的企業級安全性主體在 ACL 編輯器中變成可見。
  • 每個非根域中的主域控制器,讓您可以建立新的網域特定 Windows 2003 安全性主體。 若要這樣做,請使用WINNT32來升級裝載您所要操作角色的現有域控制器。 或者,將角色轉移至新升級的 Windows Server 2003 域控制器。 針對您使用 WINNT32 升級至 Windows Server 2003 的每部 Windows 2000 域控制器,以及針對您升級的每部 Windows Server 2003 工作組或成員計算機,執行下列步驟:
  1. 使用 WINNT32 升級 Windows 2000 成員計算機和域控制器之前,請先移除 Windows 2000 管理工具。 若要這樣做,請使用 控制台 中的 [新增/移除程式] 工具。 僅 (Windows 2000 升級。)

  2. 安裝 Microsoft 或系統管理員判斷為重要的任何 Hotfix 檔案或其他修正程式。

  3. 檢查每個域控制器是否有可能的升級問題。 若要這樣做,請從安裝媒體的 \I386 資料夾執行下列命令: winnt32.exe /checkupgradeonly 解決相容性檢查識別的任何問題。

  4. 從安裝媒體的 \I386 資料夾執行 WINNT32.EXE,然後重新啟動升級的 2003 域控制器。

  5. 視需要降低舊版用戶端的安全性設定。

    如果 Windows NT 4.0 用戶端沒有 NT 4.0 SP6 或 Windows 95 用戶端未安裝目錄服務用戶端,請停用域控制器組織單位上預設域控制器原則上的 SMB 服務簽署,然後將此原則連結至裝載域控制器的所有組織單位。 計算機設定\Windows 設定\安全性設定\本機原則\安全性選項\Microsoft 網络伺服器:數字簽署通訊 (一律)

  6. 使用下列資料點確認升級的健康情況:

    • 升級已順利完成。
    • 您新增至安裝的 Hotfix 已成功取代原始二進位檔。
    • Active Directory 的輸入和輸出複寫會針對域控制器保留的所有命名內容進行。
    • Netlogon 和 Sysvol 共用存在。
    • 事件記錄檔指出域控制器及其服務狀況良好。

    注意事項

    升級之後,您可能會收到下列事件訊息:您可以放心地忽略此事件訊息。

  7. 安裝 Windows Server 2003 管理工具 (Windows 2000 升級和僅限 Windows Server 2003 非域控制器) 。 Adminpak.msi 位於 Windows Server 2003 CD-ROM 的 \I386 資料夾中。 Windows Server 2003 媒體在 Support\Tools\Suptools.msi 檔案中包含更新的支援工具。 請確定您已重新安裝此檔案。

  8. 在樹系的每個網域中,至少備份您升級至 Windows Server 2003 的前兩個 Windows 2000 域控制器。 在鎖定的記憶體中找出升級至 Windows Server 2003 的 Windows 2000 電腦備份,以免不小心使用它們來還原現在執行 Windows Server 2003 的域控制器。

  9. (選擇性) 在您升級至 Windows Server 2003 的域控制器上執行 Active Directory 資料庫的脫機重組,因為單一實例存放區 (SIS) 僅) 完成 windows 2000 升級 (。

    SIS 會檢閱儲存在 Active Directory 中之對象的現有許可權,然後在這些物件上套用更有效率的安全描述符。 當升級的域控制器第一次啟動 Windows Server 2003 操作系統時,SIS 會在目錄服務事件記錄檔) 中自動啟動 (由事件 1953 所識別。 只有當您在目錄服務事件記錄檔中記錄事件識別碼 1966 事件訊息時,您才能從改良的安全描述符存放區獲益:此事件訊息表示單一實例存放區作業已完成,並作為系統管理員使用 NTDSUTIL.EXE 執行 Ntds.dit 離機重組的佇列。

    離線重組可將 Windows 2000 Ntds.dit 檔案的大小減少高達 40%,改善 Active Directory 效能,並更新資料庫中的頁面,以更有效率地儲存連結值屬性。 如需如何重組 Active Directory 資料庫的詳細資訊,請按下列文章編號以檢視 Microsoft 知識庫中的文章:

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

  10. 調查 DLT 伺服器服務。 Windows Server 2003 域控制器會在全新和升級安裝時停用 DLT Server 服務。 如果您組織中的 Windows 2000 或 Windows XP 用戶端使用 DLT Server 服務,請使用 群組原則,在新的或升級的 Windows Server 2003 域控制器上啟用 DLT Server 服務。 否則,請以累加方式從 Active Directory 刪除分散式連結追蹤物件。 如需詳細資訊,請按下列文章編號以檢視 Microsoft 知識庫中的文章:

    312403 Windows 域控制器上的分散式連結追蹤

    如果您大量刪除數千個 DLT 物件或其他物件,則可能會因為缺少版本存放區而封鎖複寫。 依預設,請等候 標記 ( 天數、刪除最後一個 DLT 對象之後) 60 天,並讓垃圾收集完成,然後使用 NTDSUTIL.EXE 來執行 Ntds.dit 檔案的離線重組。

  11. 設定最佳做法組織單位結構。 Microsoft 建議系統管理員在所有 Active Directory 網域中主動部署最佳做法組織單位結構,並在 Windows 網域模式中升級或部署 Windows Server 2003 域控制器之後,將舊版 API 用來建立使用者、計算機和群組的預設容器重新導向至系統管理員指定的組織單位容器。

    For additional information about the best practice organizational unit structure, view the "Creating an Organizational Unit Design" section of the "Best Practice Active Directory Design for Managing Windows Networks" white paper. 若要檢視白皮書,請造訪下列 Microsoft 網站: https://technet.microsoft.com/library/bb727085.aspx 如需變更舊版 API 所建立使用者、計算機和群組所在之預設容器的詳細資訊,請按下列文章編號以檢視 Microsoft 知識庫中的文章:

    324949 重新導向 Windows Server 2003 網域中的使用者和計算機容器

  12. 針對樹系中每個新的或升級的 Windows Server 2003 域控制器,重複步驟 1 到 10,並針對每個 Active Directory 網域 (最佳做法組織單位結構) 步驟 11。

    摘要:

    • 升級 Windows 2000 域控制器,如果使用 WINNT32 (,請從滑流安裝媒體升級)
    • 確認已升級的計算機上已安裝 Hotfix 檔案
    • 安裝安裝媒體上未包含的任何必要 Hotfix
    • (AD、FRS、原則等新伺服器或升級的伺服器上確認健康情況)
    • 在OS升級之後等候24小時,然後脫機重組 (選擇性)
    • 如果您必須啟動 DLT 服務,否則請使用 q312403 / q315229 post forest-wide domainpreps 刪除 DLT 物件
    • 執行脫機重組 60 天以上, (標記存留期和垃圾收集 #删除 DLT 對象之後) 天數

實驗室環境中的試執行升級

將 Windows 域控制器升級至生產 Windows 2000 網域之前,請先在實驗室中驗證並精簡您的升級程式。 如果精確鏡像生產樹系的實驗室環境升級順利執行,您可能會預期在生產環境中會有類似的結果。 對於複雜的環境,實驗室環境必須在下列區域中鏡像生產環境:

  • 硬體:計算機類型、記憶體大小、頁面檔案放置、磁碟大小、效能和raid設定、BIOS和韌體修訂層級
  • 軟體:用戶端和伺服器操作系統版本、用戶端和伺服器應用程式、Service Pack 版本、Hotfix、架構變更、安全組、群組成員資格、許可權、原則設定、物件計數類型和位置、版本互操作性
  • 網路基礎結構:WINS、DHCP、連結速度、可用頻寬
  • 載入:負載模擬器可以模擬密碼變更、物件建立、Active Directory 複寫、登入驗證和其他事件。 目標不是重現生產環境的規模。 相反地,目標是要探索一般作業的成本和頻率,並根據您目前和未來的需求,在生產環境中插入其影響 (名稱查詢、復寫流量、網路頻寬和處理器耗用量) 。
  • 系統管理:執行的工作、使用的工具、使用的操作系統
  • 作業:容量、互操作性
  • 磁碟空間:記下下列每個作業之後,每個網域中全域編錄和非全域編錄域控制器上的操作系統、Ntds.dit 和 Active Directory 記錄檔的開始、尖峰和結束大小:
    1. adprep /forestprep
    2. adprep /domainprep
    3. 將 Windows 2000 域控制器升級至 Windows Server 2003
    4. 在版本升級之後執行離線重組

了解升級程式和環境的複雜度,結合詳細觀察,可決定您適用於升級生產環境的步調和謹慎程度。 透過高可用性廣域網聯機的少數域控制器和 Active Directory 物件 (WAN) 連結的環境,可能只會在幾小時內升級。 您可能必須更小心擁有數百個域控制器或數十萬個 Active Directory 物件的企業部署。 在這種情況下,您可能想要在數周或幾個月內執行升級。

在實驗室中使用「試執行」升級來執行下列工作:

  • 了解升級程式的內部運作和相關聯的風險。
  • 公開環境中部署程式的潛在問題區域。
  • 測試並開發後援計劃,以防升級失敗。
  • 定義適當的詳細層級,以套用至生產網域的升級程式。

沒有足夠磁碟空間的域控制器

在磁碟空間不足的域控制器上,使用下列步驟在裝載 Ntds.dit 和記錄檔的磁碟區上釋出額外的磁碟空間:

  1. 刪除未使用的檔案,包括 *.tmp因特網瀏覽器使用的檔案或快取檔案。 若要這樣做,請輸入下列命令 (在每個命令之後按 ENTER) :

    cd /d drive\  
    del *.tmp /s  
    
  2. 刪除任何使用者或記憶體轉儲檔案。 若要這樣做,請輸入下列命令 (在每個命令之後按 ENTER) :

    cd /d drive\  
    del *.dmp /s  
    
  3. 暫時移除或重新放置您可以從其他伺服器存取或輕鬆重新安裝的檔案。 您可以移除並輕鬆取代的檔案包括 ADMINPAK、支援工具,以及 %systemroot%\System32\Dllcache 資料夾中的所有檔案。

  4. 刪除舊的或未使用的使用者配置檔。 若要這樣做,請按兩下 [ 開始],以滑鼠右鍵按兩下 [我的計算機],按兩下 [ 內容],按兩下 [ 使用者設定檔 ] 索引卷標,然後刪除舊帳戶和未使用帳戶的所有配置檔。 請勿刪除任何可能用於服務帳戶的配置檔。

  5. 刪除 %systemroot%\Symbols 上的符號。 若要這樣做,請輸入下列命令: rd /s %systemroot%\symbols 根據伺服器是否已設定完整或小型符號,這可能會增加大約 70 MB 到 600 MB。

  6. 執行離線重組。 Ntds.dit 檔案的離線重組可能會釋放空間,但暫時需要目前 DIT 檔案的兩倍空間。 如果有可用的本機磁碟區,請使用其他本機磁碟區來執行離線重組。 或者,在連線的最佳網路伺服器上使用空間來執行離線重組。 如果磁碟空間仍然不足,請從 Active Directory 以累加方式刪除不必要的使用者帳戶、計算機帳戶、DNS 記錄和 DLT 物件。

注意事項

Active Directory 不會從資料庫中刪除物件,直到根據預設 (的 標記生命時間 天數、經過 60 天) ,而且垃圾收集完成為止。 如果您將 標記lifetime 縮減為低於樹系中端對端復寫的值,則可能會導致Active Directory 不一致。