Hyper-V VM 的 Vagrant Powershell 问题(vagrant 版本 1.8.4)*权限被拒绝*
Vagrant Powershell issue with Hyper-V VM (vagrant version 1.8.4) *Permission denied*
我有一个使用 Vagrant 1.8.4 构建的 Hyper-V 虚拟机,我正在尝试使用 "vagrant powershell" 命令来启动一个已配置(使用 puppet)到虚拟机上的脚本。有些目录很容易访问,例如C:\users\vagrant。我可以完全控制此文件夹和所有后续目录。每当我尝试启动脚本,甚至使用 'dir' 命令访问某些文件夹时,我都会收到一条错误消息,指出 "permission denied".
这是一个简单的 "vagrant powershell -c 'C:\provision\shell'" 命令的输出:
vagrant : The following WinRM command responded with a non-zero exit status.
+ CategoryInfo : NotSpecified: (The following W...ro exit status.:String) [], RemoteException
+ FullyQualifiedErrorId : NativeCommandError
Vagrant assumes that this means the command failed!
dir 'C:\provision\shell'
Stdout from the command:
Stderr from the command:
#< CLIXML
<Objs Version="1.1.0.1" xmlns="http://schemas.microsoft.com/powershell/2004/04"><S S="Error">dir : Access to the
path 'C:\provision\shell' is denied._x000D__x000A_</S><S S="Error">At line:1 char:40_x000D__x000A_</S><S
S="Error">+ $ProgressPreference='SilentlyContinue';dir 'C:\provision\shell'_x000D__x000A_</S><S S="Error">+
~~~~~~~~~~~~~~~~~~~~~~~~_x000D__x000A_</S><S S="Error"> + CategoryInfo :
PermissionDenied: (C:\provision\shell:String) [Get-ChildItem], UnauthorizedAccessExcepti _x000D__x000A_</S><S
S="Error"> on_x000D__x000A_</S><S S="Error"> + FullyQualifiedErrorId :
DirUnauthorizedAccessError,Microsoft.PowerShell.Commands.GetChildItemCommand_x000D__x000A_</S><S S="Error">
_x000D__x000A_</S></Objs>
如果有人能帮我弄清楚为什么会出现这些 "permission denied" 错误,那就太好了!
如有任何帮助,我们将不胜感激。
这个问题是我在远程会话中尝试使用 "vagrant powershell" 连接到虚拟机。 Windows 没有传递我的凭据,因为我被远程访问并试图将 SMB 文件夹访问回 VM 主机,这不是我的本地机器。 SMB 共享文件夹是一个 'symlink',这是发生跳闸的地方。如果我有一个委托令牌(例如使用 CredSSP),访问可能已被授予。
如我的评论所述,我 能够通过预配的 PowerShell 脚本复制共享文件夹的内容。丑陋,但有效。
感谢 codekaizen 帮助我制定回复(信用到期的信用)。
我有一个使用 Vagrant 1.8.4 构建的 Hyper-V 虚拟机,我正在尝试使用 "vagrant powershell" 命令来启动一个已配置(使用 puppet)到虚拟机上的脚本。有些目录很容易访问,例如C:\users\vagrant。我可以完全控制此文件夹和所有后续目录。每当我尝试启动脚本,甚至使用 'dir' 命令访问某些文件夹时,我都会收到一条错误消息,指出 "permission denied".
这是一个简单的 "vagrant powershell -c 'C:\provision\shell'" 命令的输出:
vagrant : The following WinRM command responded with a non-zero exit status.
+ CategoryInfo : NotSpecified: (The following W...ro exit status.:String) [], RemoteException
+ FullyQualifiedErrorId : NativeCommandError
Vagrant assumes that this means the command failed!
dir 'C:\provision\shell'
Stdout from the command:
Stderr from the command:
#< CLIXML
<Objs Version="1.1.0.1" xmlns="http://schemas.microsoft.com/powershell/2004/04"><S S="Error">dir : Access to the
path 'C:\provision\shell' is denied._x000D__x000A_</S><S S="Error">At line:1 char:40_x000D__x000A_</S><S
S="Error">+ $ProgressPreference='SilentlyContinue';dir 'C:\provision\shell'_x000D__x000A_</S><S S="Error">+
~~~~~~~~~~~~~~~~~~~~~~~~_x000D__x000A_</S><S S="Error"> + CategoryInfo :
PermissionDenied: (C:\provision\shell:String) [Get-ChildItem], UnauthorizedAccessExcepti _x000D__x000A_</S><S
S="Error"> on_x000D__x000A_</S><S S="Error"> + FullyQualifiedErrorId :
DirUnauthorizedAccessError,Microsoft.PowerShell.Commands.GetChildItemCommand_x000D__x000A_</S><S S="Error">
_x000D__x000A_</S></Objs>
如果有人能帮我弄清楚为什么会出现这些 "permission denied" 错误,那就太好了!
如有任何帮助,我们将不胜感激。
这个问题是我在远程会话中尝试使用 "vagrant powershell" 连接到虚拟机。 Windows 没有传递我的凭据,因为我被远程访问并试图将 SMB 文件夹访问回 VM 主机,这不是我的本地机器。 SMB 共享文件夹是一个 'symlink',这是发生跳闸的地方。如果我有一个委托令牌(例如使用 CredSSP),访问可能已被授予。
如我的评论所述,我 能够通过预配的 PowerShell 脚本复制共享文件夹的内容。丑陋,但有效。
感谢 codekaizen 帮助我制定回复(信用到期的信用)。