![Get-ADGroup 和 Get-ADUser 命令行是否要求启用所有 RSAT?](https://linux22.com/image/1585421/Get-ADGroup%20%E5%92%8C%20Get-ADUser%20%E5%91%BD%E4%BB%A4%E8%A1%8C%E6%98%AF%E5%90%A6%E8%A6%81%E6%B1%82%E5%90%AF%E7%94%A8%E6%89%80%E6%9C%89%20RSAT%EF%BC%9F.png)
我正在尝试获得自动化脚本的批准,该脚本同时利用了以下功能:
Get-ADGroup
和
Get-ADUser
命令行(PowerShell 的 ActiveDirectory 模块的一部分)。但是,为了获得批准,我需要找到一种替代方案,以便在将要运行脚本的服务器上启用整个远程服务器管理工具 (RSAT)。
通过服务器管理启用 RSAT:
有没有办法只启用特定的服务器角色,以避免必须启用全部RSAT 中有哪些工具?例如,通过查看此内容,在 Microsoft 的 ActiveDirectory 模块页面上,他们似乎暗示 ActiveDirectory 模块可能仅利用 Active Directory 域服务 (ADDS) 和/或 Active Directory 轻量级目录服务 (ADLDS) 服务器角色。有人知道是否是这种情况吗?
ActiveDirectory 模块页面:
服务器管理上的服务器角色选择:
答案1
Powershell 模块与 AD 服务角色无关。事实上,除非您的服务器是域控制器,否则您绝对不需要这些。
我曾尝试确定使 Powershell 命令行运行所需的 RSAT 最小子集,但我发现我需要整个 RSAT 包,否则它将无法工作。
对于 Windows 10 Build 1809 及更高版本(我推测在 Server 2019 中也是如此),RSAT 本身已成为 Windows 中的按需功能。但同样:尚不清楚这 10 个左右的功能中究竟哪一个提供了哪些 MMC 模块或 Powershell 命令行。
微软确实应该为此提供适当的文档,但他们没有。
我唯一可以肯定的是:如果您将 RSAT 作为一个整体安装,它保证可以工作。而且我从来没有能够让它只与 RSAT 的一个子集一起工作。
答案2
由于我尝试运行此程序的服务器是 2012 R2,我发现你需要执行以下操作仅启用 ActiveDirectory PowerShell 模块要做以下事情:
在 Windows 2012 R2 服务器上:
- 如果情况尚未发生,请转到服务器管理器控制台上的“删除角色和功能”向导,然后删除(取消选中)“功能”选项卡中的所有“远程服务器管理工具”。然后,重新启动服务器。
在服务器上运行以下 PowerShell 脚本:
Install-WindowsFeature RSAT-AD-PowerShell