通过powershell远程安装.net

时间:2014-02-13 15:24:46

标签: windows powershell

我正在尝试通过PowerShell远程在Windows Server 2008 r2计算机上安装.net框架。阅读它似乎无法通过现有的PowerShell会话实现,但需要明确传入凭据(任何想法为什么会这样?)。但是,我仍然会收到许可错误。

例如,如果我跑:

$cred = Get-Credential -Credential 10.20.0.13\administrator
$Session=New-PsSession -ComputerName 10.20.0.13 -Credential $cred
Invoke-command -ScriptBlock {Start-Process -FilePath c:\installers\dotNetFx40_Full_x86_x64.exe  -ArgumentList "/q /norestart /log c:\" -Wait} -Credential $cred -ComputerName 10.20.0.13

我可以在远程计算机上看到安装程序运行(在任务管理器中),临时文件夹是在c:\的根目录下创建的,提取的文件然后我得到一个700kb的日志文件。在那个日志文件的脚下我得到:

  

OS Version = 6.1.7601,Platform 2,Service Pack 1 OS Description =   Win2K8R2 - x64标准版Service Pack 1 CommandLine =   C:\ b65da67b927bfb71c84adcecefc019 \ Setup.exe / q / norestart / log c:\   / x86 / x64 TimeZone = GMT标准时间初始LCID = 2057使用   同时下载和安装机制操作:安装   包名称= Microsoft .NET Framework 4安装包版本=   4.0.30319用户体验数据收集策略:已禁用适用项目数:11 Exe   (C:\ b65da67b927bfb71c84adcecefc019 \ SetupUtility.exe)成功。可执行程序   日志文件:dd_SetupUtility.txt ServiceControl操作成功!   ServiceControl操作成功!可执行程序   的(C:\ b65da67b927bfb71c84adcecefc019 \ Windows6.1-KB958488-v6001-x64.msu程序)   失败,0x5 - 访问被拒绝。 。最终结果:安装   错误代码:(0x00000005),“访问被拒绝。”(已废弃   时间:0 00:01:12)。

因此拒绝访问。但是,使用完全相同的凭据,我可以执行其他任务(在Powershell中添加服务器角色,通过powershell等添加Windows功能),然后我可以使用相同的用户名/密码在框中进行RDP并在那里运行安装程序(完成正常)。

我在某处丢失某些东西,但似乎无法找出它是什么。我可以看到它为其他人工作(http://social.technet.microsoft.com/Forums/windowsserver/ar-SA/3045eb24-7739-4695-ae94-5aa7052119fd/install-dotnet-framework-4-using-powershell?forum=winserverpowershell)所以不知道我为什么会这样做。

任何帮助都非常感激。

由于

2 个答案:

答案 0 :(得分:0)

您正在创建会话但从不使用它?

我之前没有在远程计算机上尝试过此操作,但尝试使用-Verb RunAs“以管理员身份”运行此过程,如下所示:

$cred = Get-Credential -Credential 10.20.0.13\administrator
$Session=New-PsSession -ComputerName 10.20.0.13 -Credential $cred
Invoke-command -ScriptBlock {Start-Process -FilePath c:\installers\dotNetFx40_Full_x86_x64.exe  -ArgumentList "/q /norestart /log c:\" -Wait -Verb RunAs } -Session $Session

答案 1 :(得分:0)

安装.NET framework 4.0时,它会安装一些更新(.msu)文件。

但是当我们远程安装.NET 4.0时,由于这些更新而失败。这背后的原因是,不允许远程安装这些更新。请查找知识库文章here。本文还提到了解决方法。