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!
To edit /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.