Drivers
modinfo 找到錯誤的驅動程序
根據此處的建議,我正在嘗試更改我的 WiFi 驅動程序。我發現這個儲存庫聲稱擁有我想要的東西。執行安裝腳本後,一切順利,除了最後一步,它用於
modinfo
檢查是否正在使用新驅動程序。它說舊驅動程序仍在使用中。經過一番調查,我發現這
modinfo
是腳本報告的來源。我發現我現在有兩個同名的驅動程序,我只想使用其中一個。它們位於:舊的:
/lib/modules/4.13.0-16-generic/kernel/drivers/net/wireless/realtek/rtlwifi/rtlwifi.ko
和新的:
/lib/modules/4.13.0-16-generic/kernel/drivers/net/wireless/rtlwifi/rtlwifi.ko
modinfo
正在報告舊的,我正在嘗試使用新的。的手冊頁modinfo
只是說它在/lib/modules/4.13.0-16-generic
. 如果我通過更具體的位置,則可以找到任一驅動程序。我想這意味著新的驅動程序沒有被使用,我想改變它。我查找了一些解決方案,但它們往往包含諸如“您最終可能會遇到無法啟動的系統”之類的片語,因此我並沒有過多地擺弄。我遠非司機專家…
所以我的問題是:如何讓新驅動程序在這種情況下工作?
回應評論:
sudo modprobe -rv rtl8192ce
產量
rmmod rtl8192ce rmmod rtl8192c_common rmmod rtl_pci rmmod rtlwifi rmmod mac80211 rmmod cfg80211
和
sudo modprobe -v rtl8192ce
產量
insmod /lib/modules/4.13.0-16-generic/kernel/net/wireless/cfg80211.ko insmod /lib/modules/4.13.0-16-generic/kernel/net/mac80211/mac80211.ko insmod /lib/modules/4.13.0-16-generic/kernel/drivers/net/wireless/realtek/rtlwifi/rtlwifi.ko insmod /lib/modules/4.13.0-16-generic/kernel/drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common.ko insmod /lib/modules/4.13.0-16-generic/kernel/drivers/net/wireless/realtek/rtlwifi/rtl_pci.ko insmod /lib/modules/4.13.0-16-generic/kernel/drivers/net/wireless/realtek/rtlwifi/rtl8192ce/rtl8192ce.ko ips=0 fwlps=0 swenc=1
順便說一句,執行這些命令會殺死 wifi,需要重新啟動(這可能是我試圖通過更改驅動程序來解決的問題的表現?)。
要載入從 git repo 安裝的核心模組:
解除安裝模組:
sudo modprobe -rv rtl8192ce
從載入模組
/lib/modules/4.13.0-16-generic/kernel/drivers/net/wireless/rtlwifi/
:sudo insmod /lib/modules/4.13.0-16-generic/kernel/net/wireless/cfg80211.ko sudo insmod /lib/modules/4.13.0-16-generic/kernel/net/mac80211/mac80211.ko sudo insmod /lib/modules/4.13.0-16-generic/kernel/drivers/net/wireless/rtlwifi/rtlwifi.ko sudo insmod /lib/modules/4.13.0-16-generic/kernel/drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common.ko sudo insmod /lib/modules/4.13.0-16-generic/kernel/drivers/net/wireless/rtlwifi/rtl_pci.ko sudo insmod /lib/modules/4.13.0-16-generic/kernel/drivers/net/wireless/rtlwifi/rtl8192ce/rtl8192ce.ko ips=0 fwlps=0 swenc=1