使用本地安装程序在远程服务器上安装

时间:2015-03-24 14:25:15

标签: powershell batch-file server bamboo

我有一个安装服务的安装文件(* .msi)。我想在远程服务器上安装此服务。

通过远程桌面执行此操作不是问题,但我无法使用批处理文件或PowerShell命令自动执行此操作,该命令将使用本地文件远程安装应用程序。

问题是什么:

我有一个Bamboo CI服务器,可以生成安装文件。我想使用脚本在远程服务器上安装应用程序,而不复制安装文件(类似于使用Ms Web Deploy部署应用程序)。

是否可以这样做?

到目前为止,我已经尝试过installutil.exe(在本地工作,但我无法将其配置为远程安装),ServiceConsole,但它以某种方式无法使用create命令正确安装应用程序,我无法覆盖该应用程序。< / p>

2 个答案:

答案 0 :(得分:1)


我之前这样做 首先用invoke-webrequest下载msi或exe命令,如

invoke-webrequest http://mysiteapp -outfile c:\myapp.msi

然后
您可以使用msiexec安装应用,或者某些应用可以像这样安装

myapp.msi /quite  

如果您有来自服务器的telnet,您可以制作脚本,然后运行...
如果您没有访问telnet,则应使用invoke-commandpsexec 这个link可以帮助你

答案 1 :(得分:0)

安装.msi文件时使用的可执行文件是msiexec.exe;您可以使用PowerShell的Invoke-Command cmdlet远程调用它,并将远程路径作为参数传递给.msi文件(查看msiexec.exe语法以获取详细信息)。

技巧是从远程PowerShell会话访问本地服务器上的.msi文件。您几乎肯定需要使用CredSSP身份验证创建会话,以便Invoke-Command创建的远程PowerShell会话能够建立与本地服务器的连接并访问.msi文件。

我希望这能让你走上正确的道路。