Upgrade

insmod:錯誤:無法插入模組 8188eu.ko:模組格式無效

  • May 19, 2020

我正在嘗試將 TL-WN725N 用作 Fedora 20 的 USB WiFi 適配器。

我遵循了這些指令,並且適配器執行良好,甚至在過去幾週內經歷了兩次更新。

然後我yum update今天做了一個,它仍然可以正常工作,直到我重新啟動電腦。我試圖重新載入模組並得到insmod: ERROR: could not insert module 8188eu.ko: Invalid module format.

我發現,我的核心和模組中的核心標頭檔不再相同,我必須更新核心,所以我這樣做並得到了

sudo yum install kernel-headers
Loaded plugins: langpacks, refresh-packagekit
Package kernel-headers-3.17.3-200.fc20.x86_64 already installed and latest version
Nothing to do

現在我對如何讓模組正確載入有點困惑。有人知道嗎?

您的模組是為較早的核心(剛剛更新的核心)建構的。

確保您已重新啟動,以便使用最新的核心。

確認正在執行的核心和安裝的版本kernel-headers是一樣的。

你現在需要為目前核心重新編譯你的模組:

cd rtl8188eu
make clean
make all
make install
modprobe -r 8188eu
modprobe 8188eu

不幸的是,每次更新核心時,您都必須繼續這樣做,直到該驅動程序使其成為主流核心包。

有一種稱為動態核心模組支持的工具,可以在每次核心更新時自動建構樹外模組,例如您的模組(例如,VirtualBox 驅動程序使用它),但它會涉及大量額外的配置工作。你可能會發現付出的努力比付出的多。

這是生活在技術前沿的缺點;-)

引用自:https://unix.stackexchange.com/questions/170503