ablog

不器用で落着きのない技術者のメモ

/etc/fstab で設定した通りのマウントオプションでNFSマウントされない

環境

  • 単一ホスト内でNFSサーバとNFSクライアントを自給自足しているちょっと変わった環境。
  • カーネル・バージョンなどは以下の通り。
[root@node01 rc.d]# cat /etc/issue
CentOS release 5.5 (Final)
Kernel \r on an \m

[root@node01 rc.d]# uname -a
Linux node01.ablog.com 2.6.18-194.el5xen #1 SMP Fri Apr 2 16:16:54 EDT 2010 i686 i686 i386 GNU/Linux

現象

  • OS起動後、NFSマウントされているが、マウントオプションが /etc/fstab に設定した内容と異なる。
    • /etc/fstab
[root@node01 r~]# tail -n 1 /etc/fstab 
#192.168.81.1:/exports/rac /u02                  nfs     rw,bg,hard,nointr,rsize=32768,wsize=32768,tcp,actimeo=0,vers=3,timeo=600 0 0
    • 実際に使われているマウントオプション
[root@node01 ~]# mount
(中略)
node01-st.ablog.com:/nfs/rac on /u02 type nfs (rw,bg,addr=192.168.81.101)

原因

  • nfs より先に netfs が起動されているためと思われる。
[root@node01 ~]# find /etc/rc.d -name '*nfs' -o -name '*netfs'
/etc/rc.d/rc2.d/K20nfs
/etc/rc.d/rc2.d/S25netfs
/etc/rc.d/rc3.d/K20nfs
/etc/rc.d/rc3.d/S25netfs
/etc/rc.d/rc4.d/K20nfs
/etc/rc.d/rc4.d/S25netfs
/etc/rc.d/init.d/netfs
/etc/rc.d/init.d/nfs
/etc/rc.d/rc5.d/K20nfs
/etc/rc.d/rc5.d/S25netfs
/etc/rc.d/rc0.d/K20nfs
/etc/rc.d/rc0.d/K75netfs
/etc/rc.d/rc1.d/K20nfs
/etc/rc.d/rc1.d/K75netfs
/etc/rc.d/rc6.d/K20nfs
/etc/rc.d/rc6.d/K75netfs

対処

  • netfs より先に nfs が起動するよう変更する。
[root@node01 ~]# find /etc/rc.d -name 'S25netfs'|perl -lane '$from=$_;s/S25/S61/;rename($o,$_)'
[root@node01 ~]# find /etc/rc.d -name '*netfs' -o -name '*nfs'
/etc/rc.d/rc1.d/K75netfs
/etc/rc.d/rc1.d/K20nfs
/etc/rc.d/init.d/nfs
/etc/rc.d/init.d/netfs
/etc/rc.d/rc4.d/S60nfs
/etc/rc.d/rc4.d/S61netfs
/etc/rc.d/rc3.d/S60nfs
/etc/rc.d/rc3.d/S61netfs
/etc/rc.d/rc0.d/K75netfs
/etc/rc.d/rc0.d/K20nfs
/etc/rc.d/rc2.d/S60nfs
/etc/rc.d/rc2.d/S61netfs
/etc/rc.d/rc5.d/S60nfs
/etc/rc.d/rc5.d/S61netfs
/etc/rc.d/rc6.d/K75netfs
/etc/rc.d/rc6.d/K20nfs