Vagrant: can't get NFS working

2020-07-08 06:31发布

I'm trying to change my VagrantFile so that it uses an NFS mount instead of the default VirtualBox shared folders.

I get this error message:

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

This is my 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

I can't see any owner or group getting set.

Please help! Thanks

2条回答
ら.Afraid
2楼-- · 2020-07-08 06:51

I've found mapping the uid/gid directly works OK. It's a little weird on the vagrant side, because they are arbitrary users/groups but apart from that it is fine.

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
查看更多
等我变得足够好
3楼-- · 2020-07-08 07:08

Vagrant only raises this error when the owner or group is true. Try forcing it by passing nil for both these options for both synced_folder configs.

, group: nil, owner: nil

Here's the code: https://github.com/mitchellh/vagrant/blob/8655d212c327d363f8e80185705ff70bb2e97f6b/plugins/kernel_v2/config/vm.rb#L572

查看更多
登录 后发表回答