windows - Windows 10 Pro 和 Hyper-V 上的 Vagrant SMB 共享文件夹上的“常规访问被拒绝错误”
问题描述
环境
带有 Hyper-V
Vagrant v.2.2.6的 Windows 10 专业版
地位
尝试通过 Powershell 和管理员用户使用 SMB 共享文件夹启动 homestead VM,但没有运气。
共享“站点”文件夹并创建了一个专用用户(usr:vagrant,pwd:vagrant),具有对共享文件夹的完全访问权限。
在这方面真的很挣扎。
将共享文件夹设置为Sites\mysite
(没有完整路径),因为我只共享这个特定文件夹,对吗?
错误
PS C:\Users\sgrat\Desktop\Sites\Homestead> vagrant up --provision
Bringing machine 'homestead' up with 'hyperv' provider...
==> homestead: Verifying Hyper-V is enabled...
==> homestead: Verifying Hyper-V is accessible...
homestead: Configuring the VM...
==> homestead: Starting the machine...
An error occurred while executing a PowerShell script. This error
is shown below. Please read the error message and see if this is
a configuration error with your system. If it is not, then please
report a bug.
Script: start_vm.ps1
Error:
Failed to start VM 'homestead' failed to start.
Synthetic SCSI Controller (Instance ID 480D9BCD-B214-461F-976E-2A9A546F9BB8): Failed to Power on with Error 'General access denied error'.
Account does not have permission to open attachment 'C:\Users\sgrat\Desktop\Sites\Homestead\.vagrant\machines\homestead\hyperv\Virtual Hard Disks\ubuntu-18.04-amd64.vhdx'. Error: 'General access denied error'.
'homestead' failed to start. (Virtual machine ID 555B1C43-AC2B-4B9C-A9B2-94BF40753C40)
'homestead' Synthetic SCSI Controller (Instance ID 480D9BCD-B214-461F-976E-2A9A546F9BB8): Failed to Power on with Error 'General access denied error' (0x80070005). (Virtual machine ID 555B1C43-AC2B-4B9C-A9B2-94BF40753C40)
'homestead': Account does not have permission to open attachment 'C:\Users\sgrat\Desktop\Sites\Homestead\.vagrant\machines\homestead\hyperv\Virtual Hard Disks\ubuntu-18.04-amd64.vhdx'. Error: 'General access denied error' (0x80070005). (Virtual machine ID 555B1C43-AC2B-4B9C-A9B2-94BF40753C40)
宅基地.yaml
ip: "192.168.10.10"
memory: 2048
cpus: 2
provider: hyperv
authorize: c:/Users/sgrat/.ssh/id_rsa.pub
keys:
- c:/Users/sgrat/.ssh/id_rsa
folders:
- map: Sites\mysite
to: /home/vagrant/mysite
php: '7.2'
type: "smb"
smb_host: 127.0.0.1
smb_username: vagrant
smb_password: vagrant
sites:
- map: mysite.test
to: /home/vagrant/mysite
databases:
- mysitedb
features:
- mariadb: true
- ohmyzsh: false
- webdriver: false
解决方案
我无法谈论使用相对文件路径的有效性,我只记得我在不使用完整路径时遇到了一些问题。我正在使用 Git Bash,但与您使用的设置不同:Win 10、Hyper-V、Vagrant 2.2.6。
这是我的 Homestead.yaml 文件:
---
ip: "192.168.10.10"
memory: 2048
cpus: 2
provider: virtualbox
authorize: ~/.ssh/id_rsa.pub
keys:
- ~/.ssh/id_rsa
folders:
- map: C:\Users\leif.lundberg\code
to: /home/vagrant/code
type: "nfs"
sites:
- map: homestead.test
to: /home/vagrant/code/symfobase/public
databases:
- homestead
features:
- mariadb: false
另外,我不知道您的keys
映射是否正确,并且使用正斜杠“/”而不是反斜杠“\”可能会导致问题。
推荐阅读
- laravel - 如何在laravel中将计划任务作业放入链中?
- javascript - 我无权访问数组,但需要删除逗号
- c# - 在 if 语句中使用字符串抛出错误“运算符'||' 不能应用于操作数字符串和字符串"
- python - Python:计算非线性拟合的置信区间
- python - 输入形状 Keras RNN
- django - 使用 Nginx 和 uWSGI 为 Google Cloud Run 定制 Dockerfile
- python - 使用 Flask 请求我的 API 时出现 SSLError
- linux - 创建一个空的 tar 文件,然后将其名称存储在变量中
- objective-c - AVAsset 它不适用于 HLS 流文件
- powershell - 如何在同一目录的 BAT 文件中运行 powershell