環境
- ReadyNAS 102
問題
自宅のNASではネットギアのReadyNASを使用している。特に不満はないんだが、気づいたらネットギア自体がコンシューマ向けNAS事業から撤退したので購入後しばらくしたら廃盤になってた(
まあそれはいいとして、NASをLinuxでアクセスしたいので、NFSを有効化したい。以前はSambaプロトコルでお茶を濁したが、Kubernetes経由ともなればNFSが必須
いざLinuxサーバーから試しにマウント NFSのバージョンはv4ではなくv3にした
mount -t nfs 192.168.16.xxx:/data/home/admin /mnt/nas -o vers=3
が、何回やってもホームディレクトリのマウントが「Access Denied」エラーでできない。
調査
NAS自体にSSH機能があるので有効化して ssh root@192.168.16.xxx
でアクセス(パスワード認証しかできなかった。パスワードはadmin権限の初期ユーザーのパスワード)すると
Jul 24 11:57:03 mynas rpc.mountd[2775]: refused mount request from 192.168.16.xxx for /data/home/xxx (/): not exported
なるほど、アクセス拒否と。。。で/etc/exportsを見てみると
root@mynas:~# cat /etc/exports "/home" *(insecure,insecure_locks,root_squash,anonuid=99,anongid=99,no_subtree_check,rw,sync)
一見/homeが書かれているので問題なさそうだが マウント元は /dataから始まっている。
これはReadyNASでX-RAIDが有効になっている場合は/dataがスタート地点になっているためである。
mount -t nfs (NASのIPアドレス):/(NASのボリューム名)/(NASの共有名) (Linux側のマウント用ディレクトリ名)
X-RAID を使用されている場合、ボリューム名は "data" となります。
mount␣–t␣nfs␣192.168.10.1:/data/share1␣/mnt
引用元: ReadyNAS(OS6)の共有をLinuxにてnfsマウントするコマンドが判りません。 | ネットギア【NETGEAR】
つまり、/data自体が許可されていないからマウントできないと。これバグやんけ
解決方法
/etc/exportsに /dataから始まるユーザーのディレクトリパスを追加した
"/home" *(insecure,insecure_locks,root_squash,anonuid=99,anongid=99,no_subtree_check,rw,sync)
+"/data/home/xxx" *(insecure,insecure_locks,root_squash,anonuid=99,anongid=99,no_subtree_check,rw,sync)
反映 これでマウントできるようになった
exportfs -ra