自分はmacOSを母艦にVirtualBoxにCentOSをいれて開発してたりするんですが
phpなどのソースコードはローカルのmacOS上に置いてNFS exportをし、
CentOSからNFS mountさせています。
ので、ローカルをいじると仮想サーバ上もファイルが更新されているってことに
なってて自分的には使いやすい。
最近出たmacOS CatalinaにUpgradeしたところ、どうもmacOSからのNFS exportが
出来ないようになっていて、仮想サーバでmount出来ない現象にハマしました。
NFS exportしてるディレクトリは
/Users/imaiworks/Documents/workspace
なのですが、これがどうもうまく行かない・・
# cat /etc/export
/Users/imaiworks/Documents/workspace -maproot=root -network 192.168.0.0 -mask 255.255.0.0
nfsd checkexportsをしてみると
# nfsd checkexports
exports:1: exported dir/fs mismatch: /Users/imaiworks/Documents/workspace /System/Volumes/Data
とmismatchだそうで
はて??
どうもNFS exportsする際は実際のディレクトリ名ではなく /System/Volumes/Data
を辿った先でないといけないようで
/System/Volumes/Data
をみるとほぼ / と同じものが存在しました。
ということで
/System/Volumes/Dataを追加することで
/System/Volumes/Data/Users/imaiworks/Documents/workspace -maproot=root -network 192.168.0.0 -mask 255.255.0.0
# kill -s HUP `cat /var/run/mountd.pid`
# showmount -e localhost
Exports list on localhost:
/System/Volumes/Data/Users/imaiworks/Documents/workspace 192.168.0.0
無事NFS exportできるようになりました。
もちろんNFS mountする側も
/bin/mount 192.168.56.1:/System/Volumes/Data/Users/imaiworks/Documents/workspace /var/wwwmac/workspace
てな感じで/System/Volumes/Dataを追加してあげることになります。
iOS13やらOSの変化が大きい昨今、
もっととんでもない対応をしなきゃいけないのかとちょっとビビってしまったけど、
/System/Volumes/Dataを付与するだけで良かったので安心しました。
とても参考になりました!
https://kohju.justplayer.com/Tips_MacOSX_calalina10.15.html
ありがとうございます!!