You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Vagrant配置Windows虚拟机时无法执行远程WinRM命令问题求助

问题原因

报错是Windows Server 2019首次启动时的新网络位置感知弹窗阻塞了WinRM服务响应,导致Vagrant无法执行远程命令。

解决方案

方法1:调整WinRM重试与超时配置(最简便)

无需手动操作,仅需在Vagrantfile中增加WinRM的等待重试参数,让Vagrant自动等待系统完成初始化即可,修改后的配置如下:

Vagrant.configure("2") do |config|
  config.vm.box = "StefanScherer/windows_2019"

  # 新增WinRM配置段
  config.vm.communicator = "winrm"
  config.winrm.username = "vagrant"
  config.winrm.password = "vagrant"
  config.winrm.timeout = 60 # 单次请求超时时间60秒
  config.winrm.retry_limit = 30 # 最大重试次数30次
  config.winrm.retry_delay = 10 # 每次重试间隔10秒

  # Setup environment.
  config.vm.provision "shell", path: "provision.ps1"
  # PowerShell must be reloaded, so we'll open up a new instance.
  config.vm.provision "shell", inline: "choco feature enable -n allowGlobalConfirmation"
  config.vm.provision "shell", inline: "choco install firefox azure-cli terraform"

  config.vm.provider "vmware_workstation" do |v|
    v.gui = true
  end
end

修改后重新执行vagrant up即可,Vagrant会自动重试WinRM连接直到系统完成网络初始化流程。

方法2:永久禁用网络位置提示(彻底解决)

如果希望完全消除弹窗,可在首次成功连接虚拟机后,在PowerShell中执行以下命令添加注册表项,关闭新网络位置向导:

New-Item -Path "HKLM:\System\CurrentControlSet\Control\Network" -Name "NewNetworkWindowOff" -Value 1 -PropertyType DWord -Force

你也可以把这段命令加入provision.ps1的开头,首次配置成功后,后续虚拟机重启就不会再弹出该提示。

内容的提问来源于stack exchange,提问作者RobertL

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 11:57:04