If you are using NFS with Vagrant you are probably tired of password prompts. But a few modifications to
/etc/sudoers file can help you!
/etc/sudoers file always use
visudo. This way you won’t save the file with errors and you don’t damage your system.
$ sudo visudo
And input the following for Fedora:
# Allow Vagrant to manage /etc/exports
Cmnd_Alias VAGRANT_EXPORTS_ADD = /usr/bin/tee -a /etc/exports
Cmnd_Alias VAGRANT_NFSD_CHECK = /usr/bin/systemctl status nfs-server.service
Cmnd_Alias VAGRANT_NFSD_START = /usr/bin/systemctl start nfs-server.service
Cmnd_Alias VAGRANT_NFSD_APPLY = /usr/sbin/exportfs -ar
Cmnd_Alias VAGRANT_EXPORTS_REMOVE = /bin/sed -r -e * d -ibak /etc/exports
%vagrant ALL=(root) NOPASSWD: VAGRANT_EXPORTS_ADD, VAGRANT_NFSD_CHECK, VAGRANT_NFSD_START, VAGRANT_NFSD_APPLY, VAGRANT_EXPORTS_REMOVE
How does that work? Vagrant runs the above mentioned commands to edit the
/etc/exports file so we just let it to do so without asking for
root permissions. To know the right commands you need to scan the Vagrant source code, but there is also a
/contrib folder in the Vagrant repository that tries to gather information such as this one (the above snipped is taken from there). Note that this snipped allows the password-less NFS for
vagrant group. You can change the group to the one you like or add yourself to this group with
sudo usermod -a -G vagrant USERNAME.
If you still need to set up NFS, read my previous post on setting NFS on Fedora.