Vagrant: 无法使用NFS

9
我将使用NFS挂载而不是默认的VirtualBox共享文件夹来更改我的VagrantFile。

我收到以下错误信息:

vm:
* Shared folders that have NFS enabled do not support owner/group
attributes. Host path: .

这是我的 VagrantFile 文件:
VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| 
  config.vm.box = "ktbartholomew/lamp"
  config.vm.network "private_network", type: "dhcp"
  config.vm.synced_folder ".", "/vagrant", type: "nfs"
end

我看不到任何所有者或组的设置。

请帮忙!谢谢。


你尝试过使用除了“.”之外的其他东西来挂载主机上的源文件夹吗? 看起来这可能是你的问题。 尝试使用完整路径定义它。比如'/home/user/project'或者你的路径是什么。 你现在的语句其余部分看起来和我目前使用的一样。 - noeldiaz
我刚刚更改了它,但不幸的是出现了同样的问题,尽管现在错误消息是“*启用NFS的共享文件夹不支持所有者/组属性。主机路径:/Users/jamesplayer/Sites/”。 - JamesPlayer
2个回答

3
我发现直接映射uid/gid可以正常工作。在Vagrant方面有些奇怪,因为它们是任意的用户/组,但除此之外,一切都很好。
Vagrant.configure("2") do |config|
  # ...
  config.nfs.map_uid = Process.uid
  config.nfs.map_gid = Process.gid
  config.vm.synced_folder ".",  "/vagrant", id: "vagrant-root", :nfs => true
  config.vm.synced_folder "..", "/var/www", id: "application",  :nfs => true
end

2

谢谢!这是我最终的 VagrantFile 的内容:VAGRANTFILE_API_VERSION = "2"Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| config.vm.box = "ktbartholomew/lamp" config.vm.network :private_network, ip: "10.11.12.13" config.vm.synced_folder "/Users/jamesplayer/Sites/", "/vagrant", type: "nfs", group: nil, owner: nil end - JamesPlayer
基本上不要将group、owner和mount_options作为属性使用。 - Kim Stacks
只有当所有者或组_is_为true(并且设置了nfs)时,Vagrant才会引发此错误。 - Lotus
谢谢Lotus,已经修正措辞。 - Bijan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接