Linuxコマンド辞典 modprobeコマンド(カーネル)
modules.depを利用してカーネルモジュールを読み込む/取り外す「modprobe」コマンドの概要と使い方を記載しています。
RHEL Fedora CentOS Vine Deblan Ubuntu Plamo
参考サイト:Man page of INSTALL
概要・使用方法
書式
$ modprobe [オプション] [モジュール名・・・] [モジュールオプション]
カーネルモジュールをロードしてカーネルに組み込んだり、取り外したり(アンロード)します。insmodコマンドやrmmodコマンドとは異なり、モジュールの依存関係を解決して、必要なモジュールも自動的にロードもしくはアンロードします。
modprobeは、depmodにより作成されたカーネルモジュールの依存関係ファイル(modules.dep)を利用し、カーネルモジュールを読み込みます。modules.depを利用するので依存関係を含めてカーネルモジュールを扱えます。利用するとカーネルモジュールは/lib/modules/’uname -r’/を参照します。モジュール名の「-」と「_」の違いは無視されます。modprobeは設定ファイルとして/etc/modules.confを読み込みます。モジュール読み込み/取り外しのエラーはログに記録されます。
オプション
-c –showconfig | 現在利用している設定を表示する |
-d –dirname | ルートディレクトリを指定する(デフォルトは「/」) |
-n –show,–dry-run | 他のオプションの動作を実際に行わずに表示のみ行う |
-r –remove | モジュールを指定した場合はそれを取り外す |
-s –syslog | 出力されるメッセージをsyslogに出力する(デフォルトは標準エラーに出力する) |
-C 設定ファイル –config | 設定ファイルを指定する(デフォルトは/etc/modules.conf) |
-D, –show-depends | モジュールの依存関係のみ表示する |
カーネルモジュールを指定して組み込む
-vオプションで組み込んだモジュールを表示する
$ modprobe -v モジュール名
実行結果
[root@centos ~]# modprobe -v 8139too
insmod /lib/modules/4.18.0-372.32.1.el8_6.x86_64/kernel/drivers/net/mii.ko.xz
insmod /lib/modules/4.18.0-372.32.1.el8_6.x86_64/kernel/drivers/net/ethernet/realtek/8139too.ko.xz
[root@centos ~]#
カーネルモジュールを指定して取り除く
-vオプションで取り除いたモジュールを表示する
$ modprobe -v -r モジュール名
実行結果
[root@centos ~]# modprobe -v -r 8139too
rmmod 8139too
rmmod mii
[root@centos ~]#
モジュールと依存関係にあるモジュールを表示する
$ modprobe -D モジュール名
実行結果
[root@centos ~]# modprobe -D xfs
insmod /lib/modules/4.18.0-372.32.1.el8_6.x86_64/kernel/arch/x86/crypto/crc32c-intel.ko.xz
insmod /lib/modules/4.18.0-372.32.1.el8_6.x86_64/kernel/lib/libcrc32c.ko.xz
insmod /lib/modules/4.18.0-372.32.1.el8_6.x86_64/kernel/fs/xfs/xfs.ko.xz
[root@centos ~]#