使用 powershell 脚本将 RSAT 安装到具有提升权限的 windows 10
Install RSAT using powershell script to windows 10 with elevated privileges
我在通过 gpo 将 RSAT 安装到远程 windows 10 个工作站时遇到困难。我的主要目标是使用 Get-ADuser
命令作为从我的 Windows 域获取信息的必要条件。
我使用以下命令创建了一个 PowerShell 脚本:
Get-WindowsCapability -Name RSAT* -Online | Add-WindowsCapability –Online
然而当我 运行 它时,出现一条消息要求提升权限。
所以我尝试添加凭据以自动安装并将脚本更改为:
$Username = 'domain\domain_adm'
$Password = '*******'
$pass = ConvertTo-SecureString -AsPlainText $Password -Force
$Cred = New-Object System.Management.Automation.PSCredential -ArgumentList $Username,$pass
Start-Process -FilePath powershell.exe -ArgumentList{Get-WindowsCapability -Name RSAT* -Online | Add-WindowsCapability –Online} -credential $Cred
并且从普通的 PowerShell window,它可以工作。但是,当我尝试从 gpo 使用它时却没有。
你能帮帮我吗?
目标是通过 GPO Get-ADuser
(可能是 RSAT)安装到具有 OS Windows 10
的域工作站
您可以将 RSAT 下载为 msu 文件:https://www.microsoft.com/en-us/download/details.aspx?id=45520
编辑:好的,对于 1809 及更高版本,我的第一个想法是 gpo 启动脚本,或者使用 invoke-command。
- 为什么要将凭据以明文形式放入脚本文件中?那
只是不好的做法,不应该这样做。
- 安装软件是管理员级别的事情,本地、GPO 或
否则,因为这是系统范围的更改。
最后,这不是 PowerShell code/programming 问题,也不是 PowerShell 可以解决的问题(相对于您尝试执行此操作的方式)。具体是如何使用 GPO 启用 Windows 功能或使用 PowerShell 安装软件?
因此,对于 Whosebug 来说,可以认为是题外话,对于 SuperUser 或 StackExchange 来说更像是一个问题。
综上所述,您仍然可以使用 PowerShell 来执行此操作,但是通过使用 PowerShell 为目标设置计划任务并在登录时将其设置为 运行 的管理员凭据来执行此操作。
- 您可以编写单独的脚本来创建计划任务。
- 您可以使用以下脚本通过任务进行 RSAT 安装。
Use PowerShell to Create Scheduled Tasks
与更新 PowerShell 帮助的方法非常相似:
PowerShell: Update-Help via Scheduled Task in Group Policy Preferences
就js2010所说的而言。 Windows 10 的早期版本确实如此。目前的情况如下所述。
Install RSAT for Windows 10 1809 and 1903 and 1909 automated
RSAT (Remote Server Administration Tools) in Windows 10 v1809 and
v1903 are no longer a downloadable add-on to Windows. Instead, its
included as a set of "Features on Demand" directly in Windows.
Download: Install-RSATv1809v1903v1909.ps1
长期计划任务管理也可以通过 GPO 完成,如下所述:
对于少数机器,Powershell 是一个不错的选择。如果您有权访问 GPO,那么您应该使用 then。 RSAT 为 "Windows feature"。您可以使用 WSUS。 https://4sysops.com/archives/install-rsat-1809-and-other-optional-features-in-wsus-environments/ 您还可以使用您用来在网络上的计算机上安装软件的软件。许多软件分发包 运行 在安装软件时作为 root。在这种情况下,只需给该团队以下行。
Get-WindowsCapability -Name RSAT* -Online | Add-WindowsCapability –Online
我在通过 gpo 将 RSAT 安装到远程 windows 10 个工作站时遇到困难。我的主要目标是使用 Get-ADuser
命令作为从我的 Windows 域获取信息的必要条件。
我使用以下命令创建了一个 PowerShell 脚本:
Get-WindowsCapability -Name RSAT* -Online | Add-WindowsCapability –Online
然而当我 运行 它时,出现一条消息要求提升权限。
所以我尝试添加凭据以自动安装并将脚本更改为:
$Username = 'domain\domain_adm'
$Password = '*******'
$pass = ConvertTo-SecureString -AsPlainText $Password -Force
$Cred = New-Object System.Management.Automation.PSCredential -ArgumentList $Username,$pass
Start-Process -FilePath powershell.exe -ArgumentList{Get-WindowsCapability -Name RSAT* -Online | Add-WindowsCapability –Online} -credential $Cred
并且从普通的 PowerShell window,它可以工作。但是,当我尝试从 gpo 使用它时却没有。
你能帮帮我吗?
目标是通过 GPO Get-ADuser
(可能是 RSAT)安装到具有 OS Windows 10
您可以将 RSAT 下载为 msu 文件:https://www.microsoft.com/en-us/download/details.aspx?id=45520
编辑:好的,对于 1809 及更高版本,我的第一个想法是 gpo 启动脚本,或者使用 invoke-command。
- 为什么要将凭据以明文形式放入脚本文件中?那 只是不好的做法,不应该这样做。
- 安装软件是管理员级别的事情,本地、GPO 或 否则,因为这是系统范围的更改。
最后,这不是 PowerShell code/programming 问题,也不是 PowerShell 可以解决的问题(相对于您尝试执行此操作的方式)。具体是如何使用 GPO 启用 Windows 功能或使用 PowerShell 安装软件?
因此,对于 Whosebug 来说,可以认为是题外话,对于 SuperUser 或 StackExchange 来说更像是一个问题。
综上所述,您仍然可以使用 PowerShell 来执行此操作,但是通过使用 PowerShell 为目标设置计划任务并在登录时将其设置为 运行 的管理员凭据来执行此操作。
- 您可以编写单独的脚本来创建计划任务。
- 您可以使用以下脚本通过任务进行 RSAT 安装。
Use PowerShell to Create Scheduled Tasks
与更新 PowerShell 帮助的方法非常相似:
PowerShell: Update-Help via Scheduled Task in Group Policy Preferences
就js2010所说的而言。 Windows 10 的早期版本确实如此。目前的情况如下所述。
Install RSAT for Windows 10 1809 and 1903 and 1909 automated
RSAT (Remote Server Administration Tools) in Windows 10 v1809 and v1903 are no longer a downloadable add-on to Windows. Instead, its included as a set of "Features on Demand" directly in Windows.
Download: Install-RSATv1809v1903v1909.ps1
长期计划任务管理也可以通过 GPO 完成,如下所述:
对于少数机器,Powershell 是一个不错的选择。如果您有权访问 GPO,那么您应该使用 then。 RSAT 为 "Windows feature"。您可以使用 WSUS。 https://4sysops.com/archives/install-rsat-1809-and-other-optional-features-in-wsus-environments/ 您还可以使用您用来在网络上的计算机上安装软件的软件。许多软件分发包 运行 在安装软件时作为 root。在这种情况下,只需给该团队以下行。
Get-WindowsCapability -Name RSAT* -Online | Add-WindowsCapability –Online