Vagrantの公式ドキュメントがhttps://www.vagrantup.com/docs/synced-folders/nfs.html#root-privilege-requirementをカバーしています
。
/etc/sudoers
ファイルにエントリを追加する必要があり、それを編集する方法はターミナルでこれを入力することです:sudo visudo
パスワードを入力すると、ファイルを編集しています。これらの行を以下に貼り付けます(OS XまたはLinuxでVagrantを実行しているかどうかによって異なります)。
開いているvimに慣れていない場合は、このページが役に立ちました。基本的に、以下の適切なテキストブロックをコピーします。次に、visudoで、テキストをファイルに貼り付ける場所に移動し(ファイルの終わりは問題ありません)、「i」を押して挿入モードに入ります。CMD + Vでテキストを貼り付けます。次に、ESCキーを押し、入力:w
して変更を保存してから、:q
終了します。
バージョン1.7.3以降、OS Xのsudoersファイルには次のエントリが必要です。
Cmnd_Alias VAGRANT_EXPORTS_ADD = /usr/bin/tee -a /etc/exports
Cmnd_Alias VAGRANT_NFSD = /sbin/nfsd restart
Cmnd_Alias VAGRANT_EXPORTS_REMOVE = /usr/bin/sed -E -e /*/ d -ibak /etc/exports
%admin ALL=(root) NOPASSWD: VAGRANT_EXPORTS_ADD, VAGRANT_NFSD, VAGRANT_EXPORTS_REMOVE
Linuxには次のエントリが必要です。
Cmnd_Alias VAGRANT_EXPORTS_CHOWN = /bin/chown 0\:0 /tmp/*
Cmnd_Alias VAGRANT_EXPORTS_MV = /bin/mv -f /tmp/* /etc/exports
Cmnd_Alias VAGRANT_NFSD_CHECK = /etc/init.d/nfs-kernel-server status
Cmnd_Alias VAGRANT_NFSD_START = /etc/init.d/nfs-kernel-server start
Cmnd_Alias VAGRANT_NFSD_APPLY = /usr/sbin/exportfs -ar
%sudo ALL=(root) NOPASSWD: VAGRANT_EXPORTS_CHOWN, VAGRANT_EXPORTS_MV, VAGRANT_NFSD_CHECK, VAGRANT_NFSD_START, VAGRANT_NFSD_APPLY
これらはVagrantの1つのバージョンから別のバージョンに変更されるため、上記は古くなっている可能性があります。重要なことは、ドキュメントがそれをカバーしていることです。