核心與核心模組、載入與卸載模組 1、核心: /boot/vmlinuz 或 /boot/vmlinuz-version; 核心解壓縮所需 RAM Disk: /boot/initrd (/boot/initrd-version); 核心模組: /lib/modules/version/kernel 或 /lib/modules/$(uname -r)/kernel; 核心原始碼: /usr/src/linux (要安裝才會有!否則預設不安裝的!) www.2cto.com 2、如果該核心被順利的載入系統當中了,那麼就會有幾個資訊紀錄下來:核心版本: /proc/version 系統核心功能: /proc/sys/kernel3、如果我有個新的硬體,偏偏我的作業系統不支援,該怎麼辦?重新編譯核心,並加入最新的硬體驅動程式原始碼; 或將該硬體的驅動程式編譯成為模組,在開機時載入該模組。 www.2cto.com 4、核心模組相依性/lib/modules/$(uname -r)/modules.dep 這個檔案!他記錄了在核心支援的模組的各項相依性。[root@www ~]# depmod [-Ane]選項與參數:-A :不加任何參數時, depmod 會主動的去分析目前核心的模組,並且重新寫入 /lib/modules/$(uname -r)/modules.dep 當中。若加入 -A 參數時,則 depmod 會去搜尋比 modules.dep 內還要新的模組,如果真找到新模組,才會更新。-n :不寫入 modules.dep ,而是將結果輸出到熒幕上(standard out);-e :顯示出目前已載入的不可執行檔模組名稱範例一:若我做好一個網路卡驅動程式,檔名為 a.ko,該如何更新核心相依性?[root@www ~]# cp a.ko /lib/modules/$(uname -r)/kernel/drivers/net[root@www ~]# depmod顯示所有模組:depmod -e5、核心模組的觀察:lsmod 目前核心載入了多少的模組?顯示的內容包括有:模組名稱(Module); 模組的大小(size); 此模組是否被其他模組所使用 (Used by)。6、modinfo:顯示模組詳細資料如:[root@www ~]# modinfo mii7、modprobe 來處理模組載入:[root@www ~]# modprobe [-lcfr] module_name選項與參數:-c :列出目前系統所有的模組!(更詳細的代號對應表)-l :列出目前在 /lib/modules/`uname -r`/kernel 當中的所有模組完整檔名;-f :強制載入該模組;-r :類似 rmmod ,就是移除某個模組囉~使用 modprobe 真的是要比 insmod 方便很多!因為他是直接去搜尋 modules.dep 的紀錄, 所以囉,當然可以克服模組的相依性問題,而且還不需要知道該模組的詳細路徑呢!8、模組卸載:modprobe -r 模組名