我與內核version-2.6.35
內核版本錯誤,insmod的失敗
運行當我打uname -r
它給爲2.6.35-22-generic
從Kernel-2.6.35
源代碼樹編譯的模塊,
但未能插入模塊在我運行的內核中。
我沒有任何線索。 任何人都可以幫我解決這個問題!
謝謝。
我與內核version-2.6.35
內核版本錯誤,insmod的失敗
運行當我打uname -r
它給爲2.6.35-22-generic
從Kernel-2.6.35
源代碼樹編譯的模塊,
但未能插入模塊在我運行的內核中。
我沒有任何線索。 任何人都可以幫我解決這個問題!
謝謝。
必須針對正確的內核版本編譯LKM,即輸出uname -r。在你的情況下,你已經下載了內核版本-2.6.35源代碼樹,並編譯你的LKM。在插入LKM時,檢查KERNEL_VERSION,如果它們匹配將不會在模塊插入時得到任何錯誤,但是如果它們不匹配將無法插入模塊。
你要確保CONFIG_MODVERSIONS是能夠在運行的內核,你的情況2.6.35-22-generic
。當您從2.6.35
源生成內核模塊時,正在運行的內核將允許加載具有匹配符號的模塊,或者如果缺少符號,將無法加載。
由於沒有啓用CONFIG_MODVERSIONS意味着你MUST匹配的內核版本和模塊之間的版本。
我想你正在使用官方內核樹,但你正試圖在你的發行版中加載你的模塊。您必須擁有Linux發行版中的內核源代碼/頭文件。我想這是因爲這個版本2.6.35-22-generic
,-22-generic
它不是正式版本名稱的一部分。
這將有助於如果你添加更多的信息,如你如何編譯模塊?在故障期間打印的日誌是什麼? –
我應用的命令是:'make drivers/usb/storage/usb-storage.ko' 錯誤是:無法插入模塊,錯誤代碼爲-1 – San
檢查dmesg日誌,如果您可能發現任何內容像'驗證失敗-1' –