NETWORK ENGINEER BLOG

Tips and Reviews for Engineers

cDOTで NFS マウントエラー

久しぶりに触ったら、NFS マウントでハマってしまったのでメモしておきます。

まず、以下のエラーでマウントに失敗

# mount -t nfs -v 10.1.1.21:/vol1 /mnt/test
mount.nfs: timeout set for Wed Nov 28 08:50:58 2018
mount.nfs: trying text-based options 'vers=4,addr=10.1.1.21,clientaddr=10.1.1.251'
mount.nfs: mount(2): Connection refused
mount.nfs: trying text-based options 'addr=10.1.1.21'
mount.nfs: prog 100003, trying vers=3, prot=6
mount.nfs: portmap query retrying: RPC: Program not registered

こちらは、LIF の -data-protocol が CIFS になっていました。
なお、-modify で変更できなかったので、再作成しました。

LIF を削除

cl::> network interface modify -vserver vs -lif lif1 -status-admin down
cl::> network interface delete -vserver vs -lif lif1

LIF 再作成

cl::> network interface create -vserver vs -lif lif-nfs -role data -data-protocol nfs -home-node cl-01 -home-port e0a -address 10.1.1.21 -netmask 255.255.255.0

次に以下のエラー

# mount -t nfs -v 10.1.1.21:/vol1 /mnt/test
mount.nfs: timeout set for Wed Nov 28 08:59:16 2018
mount.nfs: trying text-based options 'vers=4,addr=10.1.1.21,clientaddr=10.1.1.251'
mount.nfs: mount(2): Permission denied
mount.nfs: access denied by server while mounting 10.1.1.21:/vol1

こちらはマウント対象の"vol1"が所属する vserver のルートボリューム"svm_root" に適切な Export-Policy が適用されていないことが原因でした。

"vol1"には"policy1"が適用されていますが、"svm_root"は"default"となっています。

cl::> volume show -vserver vs -fields policy
vserver volume   policy
------- -------- -------
vs      svm_root default
vs      vol1     policy1
vs      vol22    policy1
3 entries were displayed.

"svm_root"に"policy1"を適用

cl::> volume show -vserver vs -fields policy
vserver volume   policy
------- -------- ------
vs      svm_root policy1
vs      vol1     policy1
vs      vol22    policy1
3 entries were displayed.

なお、"policy1"の内容は以下のとおりです。

cl::> vserver export-policy rule show -policyname policy1
             Policy          Rule    Access   Client                RO
Vserver      Name            Index   Protocol Match                 Rule
------------ --------------- ------  -------- --------------------- ---------
vs           policy1         1       any      0.0.0.0/0             any

無事マウントできました。

# mount -t nfs -v 10.1.1.21:/vol1 /mnt/test
mount.nfs: timeout set for Wed Nov 28 09:59:32 2018
mount.nfs: trying text-based options 'vers=4,addr=10.1.1.21,clientaddr=10.1.1.251'
10.1.1.21:/vol1 on /mnt/test type nfs (rw)

# ll
total 7726916
-rwxrwxrwx. 1 nobody nobody 4386213888 Aug 11  2017 test.txt

以上