第一部分:離線域加入
要求
【IT專家網獨家稿件】可以在所有Windows 7和Windows Server 2008 R2中找到Djoin。用戶不需將Active Directory域的性能級別提升至Windows Server R2,而且用戶不需要使用R2域控制器,因為djoin與此前的域控制器版本可以兼容。由于Djoin要求管理員特權,所以用戶需要在提升的命令提示符上使用此工具。當然,用戶也需要一個有足夠權限的帳戶創建域電腦帳戶。
兩個步驟
離線域加入一臺電腦主要由兩個步驟。首先,用戶要在Active Directory中創建一個電腦帳戶。這一過程稱為服務提供(PRovisioning)。最簡單的操作是在R2域控制器上完成這一過程。Djoin將創建一個64位編碼的元數據團作為文本文件。這個數據團要用于離線域加入Windows 7電腦。
服務提供
此命令在R2域控制器上準備了一個電腦帳戶,就像這樣:
djoin /provision /domain <domain to be joined> /machine <name of the computer to be joined> /savefile blob.txt
如果用戶不需要Windows Server 2008 R2域控制器,那可以在Windows 7電腦上通過/downlevel參數運行djoin.exe命令,這一Windows 7應該已經成為了域成員。
離線域加入
用戶要在該電腦上復制要加入到域中的bob.txt文件,并發布以下命令:
djoin /requestODJ /loadfile blob.txt /windowspath %SystemRoot% /localos
有必要使用localos參數在該電腦上運行djoin命令。在用來確定指向目標電腦系統根文件的Windows路徑參數的電腦上,也可以運行djoin命令。如果用戶想域加入一個離線虛擬機,可以使用此方法。這樣,一旦虛擬機啟動時,就已經是一個域成員,而不需要請求重啟。
在此,我們還有很多其他性能沒有談到。下面是所有djoin參數的完整列表。之后,我們將討論離線域加入如何在無人安裝情況下運行,以及在哪些情況下可以使用此功能。
命令說明:
djoin.exe [/OPTIONS] /PROVISION – 在域中準備一個電腦帳戶 /DOMAIN <Name> – 被加入域的名稱 /MACHINE <Name> – 開始域的名稱 /MACHINEOU <OU> – 選擇性(OU)是創建帳戶的地方 /DCNAME <DC> – 選擇性 <DC> 可鎖定帳戶創建 /REUSE – 重新使用任意已有帳戶,帳戶密碼會被重置 /SAVEFILE <FilePath> – 為<FilePath>中的文件節約準備數據 /NOSEARCH – 跳過帳戶沖突檢查,快速請求DCNAME /DOWNLEVEL – 支持Windows Server 2008 或更早版本域控制器的使用 /PRINTBLOB – 返回64位編碼元數據團作為應答文件 /DEFPWD – 使用默認電腦帳戶密碼 /REQUESTODJ – 請求下次啟動時進行離線域加入 /LOADFILE <FilePath> – 通過/SAVEFILE預先制定<FilePath> /WINDOWSPATH <Path> – 離線時通往Windows Directory的路徑 /LOCALOS – 允許/WINDOWSSPATH來指定本地運行的操作系統 這一命令必須作為本地管理員身份運行。 更改要在重啟后才能應用。 |
第二部分:無人情況的離線域加入
完成第一部分的操作是一回事,而在電腦初次啟動的時候,部署大量已經成為域成員的電腦又是另一回事。
可以在無人安裝的情況下離線域加入一臺電腦。首先,用戶需要完成第一部分中的兩個步驟,例如,在域中創建電腦帳戶以及元數據團。然后為unattend.xml添加以下部分:
<Component>
<Component name=Microsoft-Windows-UnattendedJoin>
<Identification>
<Provisioning>
<AccountData>Base64Encoded Blob</AccountData>
</Provisioning>
</Identification>
</Component>
“Base64Encoded Blob”要被blob.txt文件的內容替代。請檢查下面的截屏,以便對元數據團有所了解。
可能用到離線域加入的情況
筆者讀到離線域功能的時候,第一個想法是覺得對于那些購買了預裝Windows 7系統電腦的大型企業而言,這是一個極大改進。用戶只需發送一個已經域加入到電腦廠商的操作系統映像就可以了。一旦新電腦連接到該廠商網絡中,他們就可以使用了,而不需要將新電腦加入到該廠商的Active Directory域中。
不過,由于每臺電腦需要不同的元數據團,所以操作系統映像本身并不能完成此操作。用戶需要先創建blob文件,然后電腦廠商必須確認每臺電腦都接收到了自己的元數據團。問題在與元數據團必須包含在unattend.xml中。因此,這一過程比自動為多臺電腦指定名稱要復雜一些,因為用戶不能連續指定編號或以電腦的MAC地址作為其名稱。
相反,用戶需要一個中心存儲來保存所有blob文件以確保每臺電腦都接收到了正確的unattend.xml。所以,電腦廠商要為這一過程做好準備——而這似乎還不太現實。
盡管如此,筆者希望很快會有第三方的解決方案可以解決這一問題。當然,用戶也可以為自己編寫一個方案為新安裝的電腦實現離線域加入。
小型企業當然會執行手動操作。離線域加入的好處在于,部署新電腦的時候不需要管理員在本地執行操作;相對而言不需要帶有明確文本密碼的netdom腳本。
另一個使用離線域加入功能的情況是自動部署虛擬機的時候。如前所述,用戶只需裝上虛擬盤就可以域加入一個虛擬機。這樣用戶可以用腳本完成大量虛擬機的部署,而不需要再部署過程中不斷重啟。
總結
這一功能和新的離線域功能一樣有用,不過筆者更希望能有一個方案讓每臺電腦不需要特殊的blob。這在技術上是可行的。可以在無人操作的時候添加電腦名稱。而且,一旦電腦初次啟動,就可以在Active Directory中創建電腦帳戶。如此,就可以棄用我們在第一部分中所提到的Provisioning步驟。
筆者認為,這樣的方案可改進新電腦添加到Active Directory的方式。考慮到過去新的映射技術推動了用戶購買預裝了Vista的電腦,似乎這樣的方案值得一試。不過,微軟在Vista遭到媒體負面宣傳后或許不會有心思做這種技術改進吧。
新聞熱點
疑難解答
圖片精選