Ubuntu22.04LTS
初投稿です。宜しくおねがいします。
linuc201の勉強で、modprobeを使ってzfs.koというモジュールの依存関係を表示しようとしましたが、
modprobe -D zfs.ko
modprobe: FATAL: Module zfs.ko not found in directory /lib/modules/5.15.0-50-generic
ディレクトリに存在しないみたいです。でもmodules.depには
kernel/zfs/zfs.ko: kernel/zfs/zunicode.ko kernel/zfs/zzstd.ko kernel/zfs/zlua.ko kernel/zfs/zavl.ko kernel/zfs/icp.ko kernel/zfs/zcommon.ko kernel/zfs/znvpair.ko kernel/zfs/spl.ko
依存関係と記載されていました。
ls /usr/lib/modules/`uname -r`
配下を見直してみるとmodules.aliasがあったので、エイリアスが設定されていると考え、
cat /usr/lib/modules/`uname -r`/modules.alias | grep zfs.ko
何も出力されませんでした。
そこでhttps://www.silex.jp/blog/wireless/2015/08/linux.html
の記事に「modprobe は insmod とよく似ていますが、2つの点で大きく違います。insmod では「*.ko ファイルのファイル名」を引数として指定しますが、modprobe は「モジュール名」を引数とします。通常はモジュール名に拡張子 .ko を付けたものがファイル名になりますが、たまに違うものがあったりします」
つまり、modprobeの引数にファイル名で叩いていたので、出力されなかったみたいです。
modprobe --show-depends zfs
insmod /lib/modules/5.15.0-50-generic/kernel/zfs/spl.ko
insmod /lib/modules/5.15.0-50-generic/kernel/zfs/znvpair.ko
...etc