tl;dr
應用場景:平時使用特殊的硬件時,需要手工對驅動和模塊進行加載和管理。
1. Linux模塊分類
- 包含在內核中的模塊
- 動態加載到內核的模塊
2. 配置動態自動加載
- 動態模塊存放路徑: /lib/modules/$(uname -r)/kernel
- 模塊間依賴關系文檔:/lib/modules/$(uname -r)/modules.dep
2.1 自動建立新的模塊及其依賴關系
鳥哥的Linux私房菜截圖
2.2 查看已經載入內核的模塊狀態
lsmod
ray@ray-ThinkPad-X250:/lib/modules/4.8.0-25-generic$ lsmod | head
Module Size Used by
hid_multitouch 20480 0
msr 16384 0
acpi_call 16384 0
rfcomm 77824 2
ccm 20480 0
cmac 16384 1
bnep 20480 2
uvcvideo 90112 0
videobuf2_vmalloc 16384 1 uvcvideo
2.3 查看每個模塊的詳細信息:
modinfo,查看已經加載到內核的模塊、以及單獨的模塊文件信息
鳥哥的Linux私房菜截圖
2.4 加載移除模塊
insmod/rmmod,insmod需要指定詳細的模塊文件路徑
modprobe,分析模塊間依賴關系/lib/modules/$(uname -r)/modules.dep
后再加載、移除模塊。(insmod命令不分析依賴關系)
鳥哥的Linux私房菜截圖
3. 配置內核模塊
將模塊編譯進內核
參考URL:
http://blog.csdn.net/mrjy1475726263/article/details/8507744
http://blog.sina.com.cn/s/blog_716844910100s3lf.html
http://blog.jobbole.com/89886/