Packer - Windows Server 2012R2 - 安装 PowerShell 5
Packer - Windows Server 2012R2 - Install PowerShell 5
我在使用 Packer 在 Windows Server 2012 R2 上安装 PowerShell 5 时遇到问题。
要安装 PowerShell 5.1,我使用的是 chocolatey
powershell
iwr https://chocolatey.org/install.ps1 -UseBasicParsing | iex
choco install PowerShell -y
我需要为两个打包机构建器执行此操作:
- 亚马逊网络服务 EC2 AMI。
- Hyper-V 流浪者。
使用 Amazon Web Services EC2 AMI 我尝试从以下位置执行上述操作
- 作为
user_data_file
脚本的一部分。
- 作为内联提供脚本。
我在片段执行后在流程中添加了 windows-restart
规定。
类似地,我对 Hyper-V Vagrant 进行了同样的尝试,既作为 Autounattend 流程的一部分,也作为内联规定.
在这两种情况下,安装都会失败,因为未创建用户配置文件。至少我认为这是问题所在。作为参考,我在安装 sql server express 时遇到了完全相同的问题。
有没有人设法完成这个流程,你的建议是什么?
PowerShell 包使用 MSU(Windows 更新文件)。这里有几个注意事项:
- 确保 Windows 更新服务已打开。 Chocolatey 还没有这样做,尽管有 an issue filed.
- MSU 必须 运行 来自机器本地。因此,如果您 运行 正在使用 WinRM,则需要让它设置一个计划任务来调用
choco install
,然后 运行 这样。
是的,第二点是准确的。不,这不是 Chocolatey 的错。这是 Microsoft 对 MSU 文件的设计决定。这是一个真正的 PITA。
仅供参考 - BoxStarter 对其进行了适当处理,并且可以与 Packer 一起使用。往那里看,你会发现痛感减轻了。
HTH
我在使用 Packer 在 Windows Server 2012 R2 上安装 PowerShell 5 时遇到问题。
要安装 PowerShell 5.1,我使用的是 chocolatey
powershell
iwr https://chocolatey.org/install.ps1 -UseBasicParsing | iex
choco install PowerShell -y
我需要为两个打包机构建器执行此操作:
- 亚马逊网络服务 EC2 AMI。
- Hyper-V 流浪者。
使用 Amazon Web Services EC2 AMI 我尝试从以下位置执行上述操作
- 作为
user_data_file
脚本的一部分。 - 作为内联提供脚本。
我在片段执行后在流程中添加了 windows-restart
规定。
类似地,我对 Hyper-V Vagrant 进行了同样的尝试,既作为 Autounattend 流程的一部分,也作为内联规定.
在这两种情况下,安装都会失败,因为未创建用户配置文件。至少我认为这是问题所在。作为参考,我在安装 sql server express 时遇到了完全相同的问题。
有没有人设法完成这个流程,你的建议是什么?
PowerShell 包使用 MSU(Windows 更新文件)。这里有几个注意事项:
- 确保 Windows 更新服务已打开。 Chocolatey 还没有这样做,尽管有 an issue filed.
- MSU 必须 运行 来自机器本地。因此,如果您 运行 正在使用 WinRM,则需要让它设置一个计划任务来调用
choco install
,然后 运行 这样。
是的,第二点是准确的。不,这不是 Chocolatey 的错。这是 Microsoft 对 MSU 文件的设计决定。这是一个真正的 PITA。
仅供参考 - BoxStarter 对其进行了适当处理,并且可以与 Packer 一起使用。往那里看,你会发现痛感减轻了。
HTH