升级到 1.7.4 后,Vagrant 无法挂载 SMB
Vagrant unable to mount SMB after upgrade to 1.7.4
我在 windows 8 上使用 vagrant,hyper-v 提供程序启动 windows 服务器 2012 框。
在我更新到 vagrant 1.7.4 之前,我使用的是 1.7.2 版本,一切正常。
但是更新后我在尝试装载共享文件夹时遇到错误:
The following WinRM command responded with a non-zero exit status.
Vagrant assumes that this means the command failed!
cmdkey /add:xxx.xxx.xxx.xxx /user:DOMAIN\user /pass:Password
Stdout from the command:
Stderr from the command:
Exception calling "RegisterTaskDefinition" with "7" argument(s): "The user
name or password is incorrect. (Exception from HRESULT: 0x8007052E)"
At C:\tmp\vagrant-elevated-shell.ps1:58 char:1
+ $folder.RegisterTaskDefinition($task_name, $task, 6, $username, $password,
1, $n ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : ComMethodTargetInvocation
我已经替换了行中的详细信息:
cmdkey /add:xxx.xxx.xxx.xxx /user:DOMAIN\user /pass:Password
出于显而易见的原因使用占位符。我确实在 VM 中尝试 运行 上面的命令,我得到以下输出:
CMDKEY: Credential added successfully.
所以我假设它工作正常。 1.7.4 中有什么改变或损坏吗?
我已经找到解决办法。
我们的密码包含美元符号 ($),这些在 vagrant-elevated-shell.ps1 脚本中被删除了。
我已经分叉了 vagrant 回购并进行了更改并提出了拉取请求 - https://github.com/mitchellh/vagrant/pull/6452
要修补您的本地环境,您可以在本地计算机上找到 communicator.rb 文件:
C:\HashiCorp\Vagrant\embedded\gems\gems\vagrant-1.7.4\plugins\communicators\winrm\communicator.rb
(前提是您使用安装程序中的默认设置)
我在 windows 8 上使用 vagrant,hyper-v 提供程序启动 windows 服务器 2012 框。
在我更新到 vagrant 1.7.4 之前,我使用的是 1.7.2 版本,一切正常。
但是更新后我在尝试装载共享文件夹时遇到错误:
The following WinRM command responded with a non-zero exit status.
Vagrant assumes that this means the command failed!
cmdkey /add:xxx.xxx.xxx.xxx /user:DOMAIN\user /pass:Password
Stdout from the command:
Stderr from the command:
Exception calling "RegisterTaskDefinition" with "7" argument(s): "The user
name or password is incorrect. (Exception from HRESULT: 0x8007052E)"
At C:\tmp\vagrant-elevated-shell.ps1:58 char:1
+ $folder.RegisterTaskDefinition($task_name, $task, 6, $username, $password,
1, $n ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : ComMethodTargetInvocation
我已经替换了行中的详细信息:
cmdkey /add:xxx.xxx.xxx.xxx /user:DOMAIN\user /pass:Password
出于显而易见的原因使用占位符。我确实在 VM 中尝试 运行 上面的命令,我得到以下输出:
CMDKEY: Credential added successfully.
所以我假设它工作正常。 1.7.4 中有什么改变或损坏吗?
我已经找到解决办法。
我们的密码包含美元符号 ($),这些在 vagrant-elevated-shell.ps1 脚本中被删除了。
我已经分叉了 vagrant 回购并进行了更改并提出了拉取请求 - https://github.com/mitchellh/vagrant/pull/6452
要修补您的本地环境,您可以在本地计算机上找到 communicator.rb 文件:
C:\HashiCorp\Vagrant\embedded\gems\gems\vagrant-1.7.4\plugins\communicators\winrm\communicator.rb
(前提是您使用安装程序中的默认设置)