在 Windows Server 2000、2003 和2008 中,管理員使用各類命令行工具和管理控制檯管理單元鏈接到其 Active Directory 域進行管理工做,一般咱們習慣於使用MMC界面,可是不少高級管理操做只能在CMD下完成,而CMD下的命令常常成爲咱們的困惑。而且基於CMD的腳本的編寫對於系統管理員要求很高。爲了解決這種狀況Windows Server 2008 R2 中的 Active Directory 模塊合併了一組 cmdlet的Windows PowerShell 模塊.經過使用這些cmdlet,可在單一的獨立程序包中管理您的 Active Directory 域、Active Directory 輕型目錄服務 (AD LDS) 配置集和 Active Directory 數據庫裝載工具實例。shell
首先讓咱們瞭解一下PowerShell的功能,系統維護、管理中你們常在命令提示符(cmd.exe)下進行操做,對Windows PowerShell可能仍是比較陌生。Windows PowerShell將成爲CDM的繼任者,是下一代命令行工具。Windows PowerShell目前最高版本爲2.0,而且已經集成到Windows Server 2008及Windows 7中。Windows PowerShell使得IT管理員更容易地控制系統管理和加速自動化,做爲系統管理員應該掌握和使用它。Windows PowerShell 是一種新的交互式的命令行和基於任務腳本編寫技術,它使信息技術 (IT) 管理員可以全面地自動操做和控制系統管理任務,從而提升了管理員的生產力。數據庫
Windows PowerShell 包括多個系統管理實用工具、一致的語法和命名慣例、及對普通管理數據更好地導航,如登記、證書存儲 或 Windows Management Instrumentation (WMI)。Windows PowerShell 還專門針對 IT 管理,提供直觀的腳本編寫語言。以前的UNIX 的世界就有功能強大的 shell,而如今 Windows 環境也有了;Windows PowerShell 不只提供功能至關於BASH的命令列 shell,同時也內建腳本語言以及輔助腳本程序的工具。Windows PowerShell 是以 .NET 技術爲基礎,而且與現有的 WSH 保持回溯兼容,所以 Windows PowerShell 的腳本程序不只能存取 .NET CLR,也能使用現有的 COM 技術。安全
PowerShell有一個很是好的特色,那就是它有一個很是全面的幫助系統,並與Shell自己緊密集成。如今僅僅知道了cmdlet的名字,就能夠經過調用Get-Help來獲取其餘有關這個cmdlet的信息例如:Get-Help Get-Command。然而,這些信息主要是一個語法圖和一些簡單描述。若是但願獲取到更多的信息,包括了例子和參數的詳細描述等信息,就須要加入-full參數,例如:Get-Help Get-Command –Full。對例子感興趣,那麼就加入-examples參數,例如Get-Help Get-command –examples。最讓人高興的是可使用管道技術將Get-Help定向輸出到more命令中,它容許你每次顯示一個屏幕的內容,例如Get-Help Get-Command –full | more。Windows PowerShell 包含了數種系統管理工具、簡易且一致的語法,提高管理者處理常見如登陸數據庫、WMI。服務器
Exchange Server 2007 以及 System Center Operations Manager 2007 等服務器軟件都將內建 Windows PowerShell。PowerShell如今配備了Active Directory域服務(AD DS)模塊,包含了超過75個Active Directory cmdlets。而且可使用全新的PowerShell腳本,在Technet網站上提供了大量的腳本資源,如今能夠經過腳本和PoweShell圖形界面實現對於活動目錄的管理。最讓人感到驚喜的是tab-completion--按Tab鍵自動補齊功能,在用戶敲擊Tab鍵時,Windows會根據用戶當時的狀況,自動補齊下一步要輸入的字符。這樣將大大簡化管理員的工做而且下降使用CMD時命令容易拼寫錯誤的問題。dom
Disable-ADAccountide |
禁用 Active Directory 賬戶。工具 |
Enable-ADAccount網站 |
啓用 Active Directory 賬戶。spa |
Unlock-ADAccount命令行 |
解鎖 Active Directory 賬戶。 |
Get-ADAccountAuthorizationGroup |
獲取包含賬戶的 Active Directory 安全組。 |
Set-ADAccountExpiration |
設置 Active Directory 賬戶的截止日期。 |
Set-ADAccountPassword |
修改 Active Directory 賬戶的密碼。 |
Set-ADDefaultDomainPasswordPolicy |
修改 Active Directory 域的默認密碼策略。 |
Move-ADDirectoryServerOperationMasterRole |
將操做主機(也稱爲靈活單主機操做或 FSMO)角色移動到 Active Directory 域控制器。 |
Get-ADDomain |
獲取 Active Directory 域。 |
Add-ADDomainControllerPasswordReplicationPolicy |
將用戶、計算機和組添加至只讀域控制器 (RODC) 密碼複製策略 (PRP) 的容許列表或拒絕列表。 |
Set-ADDomainMode |
設置 Active Directory 域的域功能級別。 |
Set-ADForestMode |
設置 Active Directory 林的林模式。 |
Get-ADGroup |
獲取一個或多個 Active Directory 組。 |
New-ADGroup |
建立 Active Directory 組。 |
Remove-ADGroup |
刪除 Active Directory 組。 |
Set-ADGroup |
修改 Active Directory 組。 |
Add-ADGroupMember |
向 Active Directory 組添加一個或多個成員。 |
Get-ADGroupMember |
獲取 Active Directory 組的成員。 |
Remove-ADGroupMember |
從 Active Directory 組刪除一個或多個成員。 |
Get-ADObject |
獲取一個或多個 Active Directory 對象。 |
Move-ADObject |
將 Active Directory 對象或對象容器移動至不一樣的容器或域。 |
New-ADObject |
建立 Active Directory 對象。 |
Remove-ADObject |
刪除 Active Directory 對象。 |
Rename-ADObject |
更改 Active Directory 對象的名稱。 |
Restore-ADObject |
還原 Active Directory 對象。 |
Set-ADObject |
修改 Active Directory 對象。 |
Get-ADOptionalFeature |
獲取一個或多個 Active Directory 可選功能。 |
Get-ADOrganizationalUnit |
獲取一個或多個 Active Directory OU。 |
New-ADOrganizationalUnit |
新建 Active Directory OU。 |
Remove-ADOrganizationalUnit |
刪除 Active Directory OU。 |
Set-ADOrganizationalUnit |
修改 Active Directory OU。 |
Add-ADPrincipalGroupMembership |
將成員添加至一個或多個 Active Directory 組。 |
Get-ADPrincipalGroupMembership |
獲取擁有指定用戶、計算機或組的 Active Directory 組。 |
Remove-ADPrincipalGroupMembership |
將成員從一個或多個 Active Directory 組中刪除。 |
New-ADServiceAccount |
新建 Active Directory 服務賬戶。 |
Remove-ADServiceAccount |
刪除 Active Directory 服務賬戶。 |
Set-ADServiceAccount |
修改 Active Directory 服務賬戶。 |
Get-ADUser |
獲取一個或多個 Active Directory 用戶。 |
New-ADUser |
新建 Active Directory 用戶。 |
Remove-ADUser |
刪除 Active Directory 用戶。 |
Set-ADUser |
修改 Active Directory 用戶。 |
要增長Active Directory域服務模塊,使用「Add-Module ActiveDirectory」命令,而後「Get-Module」;
參數 |
描述 |
-Name <name of the drive> |
指定要添加的驅動器的名稱。 |
-PSProvider ActiveDirectory |
提供程序的名稱,在本例中爲 ActiveDirectory。 |
-Root "<DN of the partition/NC>" |
指定提供程序的內部根目錄或路徑。 |
–Server <server or domain name (NetBIOS/FQDN)[:port number]> |
指定託管您的 Active Directory 域或 AD LDS 實例的服務器。 |
-Credential <domain name>\<username> |
指定鏈接到 Active Directory 域 AD LDS 服務器必須擁有的憑據。 |
雖然PoweShell對於不少人比較陌生,可是隻要使用 Get-Help <cmdlet name> -Detailed
和Get-Help <cmdlet name> -Full,其中 <cmdlet name> 是要研究的cmdlet 的名稱。就能夠獲取詳細的信息,這樣更加便於咱們儘快掌握PowerShell的使用。但願你們能夠經過新的PowerShell更加有效的管理活動目錄。二、要獲得Contoso.com域的信息, Get-ADDomain 「Contoso.com」;
三、要顯示域控制器的具體信息, Get-ADDomainController –Discover(參數);
四、要在Contoso.com域下的下創建Guangzhou組織單元,
New-ADOrganizationalUnit -Name "guangzhou" -Path "DC=Contoso,DC=com"
五、將新的提供程序驅動器鏈接到 Active Directory 域、AD LDS 服務器或 Active Directory 數據庫裝載工具實例,
New-PSDrive -Name <name of the drive> -PSProvider ActiveDirectory -Root "<DN of the partition/NC>" –Server <server or domain name (NetBIOS/FQDN)[:port number]> -Credential <domain name>\<username>