我在Windows上通过Vagrant访问文件时遇到问题。我已经在OS X上使用它已经有一段时间了,我的Vagrantfile设置正确,每次都有效。
我向同事发送了同一个Vagrant文件,他在Windows上并在尝试通过浏览器访问文件时收到“权限被拒绝”。
为了清楚起见,服务器在访问浏览器中的“dev.local”而不是Vagrant本身时返回权限错误...这将是Windows上或VM内的配置错误。
VM是CentOS 6.5
Vagrantfile:
# -*- mode: ruby -*-
# vi: set ft=ruby :
# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = "chef/centos-6.5"
config.vm.network "private_network", ip: "192.168.33.21"
config.vm.network :forwarded_port, guest: 80, host: 8080
config.vm.provision :shell, :path => "install.sh"
config.vm.hostname = "dev.local"
config.vm.synced_folder ".", "/home", id: "vagrant", :nfs => false, :mount_options => ["dmode=777","fmode=777"]
config.ssh.insert_key = false
config.ssh.username = "vagrant"
config.ssh.password = "vagrant"
end
任何Windows Vagrant用户都可以对此有所了解吗?
答案 0 :(得分:5)
VBGuestAdditions过时了。权限错误是由于无法同步到我的本地文件夹(包含index.php)引起的,因此它使用的server / home文件夹中没有包含任何内容,并且由于查看目录结构已禁用,因此它返回了权限错误。
我安装了4.X.X,VirtualBox在5.X.X上。这是修复:
运行命令:vagrant plugin install vagrant-vbguest
运行vagrant up
,由于插件无法复制文件,因此可能仍会抛出错误。
vagrant ssh
进入框并运行以下命令:
sudo ln -s /opt/VBoxGuestAdditions-5.X.X/lib/VBoxGuestAdditions /usr/lib/VBoxGuestAdditions
将5.X.X替换为您的VirtualBox版本。
退出并运行vagrant reload
做一个快乐的舞蹈