insmod 與 modprobe 都是載入 kernel module,不過一般差別於 modprobe 能夠處理 module 載入的相依問題。
比方你要載入 a module,但是 a module 要求系統先載入 b module 時,直接用 insmod 掛入通常都會出現錯誤訊息,不過 modprobe 倒是能夠知道先載入 b module 後才載入 a module,如此相依性就會滿足。
不過 modprobe 並不是大神,不會厲害到知道 module 之間的相依性為何,該程式是讀取 /lib/modules/2.6.xx/modules.dep 檔案得知相依性的。而該檔案是透過 depmod 程式所建立。
modprobe:
modprobe可載入指定的個別模塊,或是載入一組相依的模塊。modprobe會根據depmod所產生的相依關係,決定要載入哪些模塊。若在載入過程中發生錯誤,在modprobe會卸載整組的模塊。
-a或--all 載入全部的模塊。
-c或--show-conf 顯示所有模塊的設置信息。
-d或--debug 使用排錯模式。
-l或--list 顯示可用的模塊。
-r, --remove //若在命令指定模塊,則刪除指定模塊,否則,指定"自動清除"模式
-t或--type 指定模塊類型。
-v或--verbose 執行時顯示詳細的信息。
-V或--version 顯示版本信息。
-help 顯示幫助。
-C, --config configfile //指定配置文件.默認使用/etc/modules.conf文件為配置文件
modprobe -r ip_vs # 刪除ip_vs模塊
modprobe -l | grep ip_vs # 查看ip_vs模塊是否編譯進內核
lsmod -l | grep ip_vs # 查看ip_vs模塊是否載入進內核
modprobe:
modprobe可載入指定的個別模塊,或是載入一組相依的模塊。modprobe會根據depmod所產生的相依關係,決定要載入哪些模塊。若在載入過程中發生錯誤,在modprobe會卸載整組的模塊。
-a或--all 載入全部的模塊。
-c或--show-conf 顯示所有模塊的設置信息。
-d或--debug 使用排錯模式。
-l或--list 顯示可用的模塊。
-r, --remove //若在命令指定模塊,則刪除指定模塊,否則,指定"自動清除"模式
-t或--type 指定模塊類型。
-v或--verbose 執行時顯示詳細的信息。
-V或--version 顯示版本信息。
-help 顯示幫助。
-C, --config configfile //指定配置文件.默認使用/etc/modules.conf文件為配置文件
modprobe -r ip_vs # 刪除ip_vs模塊
modprobe -l | grep ip_vs # 查看ip_vs模塊是否編譯進內核
lsmod -l | grep ip_vs # 查看ip_vs模塊是否載入進內核