modprobeに頼らずinsmodする

だいぶ前に書いた記事 [未解決]yum updateしたら立ち上がらなくなった話 の後日談です.
このマシン実は未だにレスキューモードで強引に動かしています.

今回ようやく移行機材が揃ったので移行先へファイルを移すためにNFSマウントしようとしたらモジュールが有効になってないので

1mount.nfs4: No such device

と出てマウント出来ませんでした.
mountコマンドに-vをつけて実行した感じnfsv4が有効になってないようなのでこれを手動で有効にします.
普通の場合なら単に

1$ modprobe nfs

として終わりですがレスキューモードだとmodules.depが読めないからか使えないので人力でやります.

1$ insmod /lib/modules/3.10.0-327.22.2.el7.x86_64/kernel/fs/nfs/nfsv4.ko
2Unknown symbol in module

と出て前提モジュールがないので調べます.

1$ cat /lib/modules/3.10.0-327.22.2.el7.x86_64/modules.dep | grep nfsv4.ko:
2kernel/fs/nfs/nfsv4.ko: kernel/net/dns_resolver/dns_resolver.ko kernel/fs/nfs/nfs.ko kernel/fs/lockd/lockd.ko kernel/fs/nfs_common/grace.ko kernel/net/sunrpc/sunrpc.ko kernel/fs/fscache/fscache.ko

で必要なものを1個ずつinsmodして繰り返していきます.
今回はdns_resolver.ko以外は

1$ insmod /lib/modules/3.10.0-327.22.2.el7.x86_64/kernel/fs/nfs/nfs.ko
2File exists

と出て有効化してあったので

1$ insmod /lib/modules/3.10.0-327.22.2.el7.x86_64/kernel/net/dns_resolver/dns_resolver.ko
2$ insmod /lib/modules/3.10.0-327.22.2.el7.x86_64/kernel/fs/nfs/nfsv4.ko

して終わりでした.
一応確認して無事NFSマウントできました.

1$ cat /proc/filesystems | grep nfs
2nodev   nfsd
3nodev   nfs
4nodev   nfs4
5$ mount -t 192.168.xxx.xxx:/path/to/dir /mnt/path/to/dir -v