扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
来源:Zdnet软件频道【原创】 2010年4月23日
关键字: Windows Server
在 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 数据库装载工具实例。
首先让我们了解一下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时命令容易拼写错误的问题。
下面是列举的常用命令:
Disable-ADAccount 禁用 Active Directory 帐户。
Enable-ADAccount 启用 Active Directory 帐户。
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 用户。
1、要增加Active Directory域服务模块,使用“Add-Module ActiveDirectory”命令,然后“Get-Module”;
2、要得到Contoso.com域的信息, Get-ADDomain “Contoso.com”;
3、要显示域控制器的具体信息, Get-ADDomainController –Discover(参数);
4、要在Contoso.com域下的下建立Guangzhou组织单元,
New-ADOrganizationalUnit -Name "guangzhou" -Path "DC=Contoso,DC=com"
5、将新的提供程序驱动器连接到 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>
参数 描述
-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更加有效的管理活动目录。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者