Debian buster:已安装软件包固件-realtek,rtl8192eu wifi dongle USB 适配器未显示为网络接口

Debian buster:已安装软件包固件-realtek,rtl8192eu wifi dongle USB 适配器未显示为网络接口

我试图让 Wi-Fi USB 适配器正常工作,但无济于事。加密狗是TP-Link WN821N,具有Realtek rtl8192eu芯片。我无法更改它,并且由于雇主的选择,我很快就会失去有线连接。

插入后,我得到以下输出dmesg

[12881.857485] usb 1-1.6: new high-speed USB device number 7 using ehci-pci
[12881.970614] usb 1-1.6: New USB device found, idVendor=2357, idProduct=0107, bcdDevice= 2.00
[12881.970617] usb 1-1.6: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[12881.970618] usb 1-1.6: Product: 802.11n NIC
[12881.970619] usb 1-1.6: Manufacturer: Realtek
[12881.970620] usb 1-1.6: SerialNumber: 00e04c000001

这是相关输出usb-devices

$ usb-devices|grep -C 4 Realtek
T:  Bus=01 Lev=02 Prnt=02 Port=05 Cnt=03 Dev#=  7 Spd=480 MxCh= 0
D:  Ver= 2.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=2357 ProdID=0107 Rev=02.00
S:  Manufacturer=Realtek
S:  Product=802.11n NIC
S:  SerialNumber=00e04c000001
C:  #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=500mA
I:  If#=0x0 Alt= 0 #EPs= 5 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)

但是没有网络接口出现

$ lspci -knn |grep -i net -A2
00:19.0 Ethernet controller [0200]: Intel Corporation 82579LM Gigabit Network Connection [8086:1502] (rev 04)
Subsystem: Intel Corporation 82579LM Gigabit Network Connection (Lewisville) [8086:2008]
Kernel driver in use: e1000e
Kernel modules: e1000e

另外,ip a只显示以太网接口,iw dev没有输出。

我不知情的猜测是系统找不到这个特定加密狗的驱动程序。我确实安装了非免费firmware-realtek软件包:

$ dpkg -l|grep realtek
ii  firmware-realtek                              20190114-2                              all          Binary firmware for Realtek wired/wifi/BT adapters

里面应该有一些相关的东西rtl8192eu

$ dpkg -L firmware-realtek |grep rtl8192eu
/lib/firmware/rtl_bt/rtl8192eu_fw.bin
/lib/firmware/rtlwifi/rtl8192eu_nic.bin
/lib/firmware/rtlwifi/rtl8192eu_wowlan.bin

$ apt-cache show firmware-realtek|grep -i rtl8192eu
* Realtek RTL8192EU Bluetooth firmware (rtl_bt/rtl8192eu_fw.bin)
* Realtek RTl8192EU non-WoWLAN firmware (rtlwifi/rtl8192eu_nic.bin)
* Realtek RTl8192EU WoWLAN firmware (rtlwifi/rtl8192eu_wowlan.bin)

$ grep -r rtl8192eu /lib/modules/4.19.0-20-amd64/
Binary file /lib/modules/4.19.0-20-amd64/kernel/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu.ko matches

但是我没有名为的模块rtl8192eu

$ sudo modprobe rtl8192eu
modprobe: FATAL: Module rtl8192eu not found in directory /lib/modules/4.19.0-20-amd64

虽然我可以加载rtl8xxxu,但它仍然不会出现任何新界面,两者lspci都只ip a显示以太网,并且iw dev什么也不显示。

我现在面临着一个艰难的选择:调试这个,用自己的钱购买另一个加密狗,或者换工作。

  • 与从 github 编译驱动程序相比,我强烈更喜欢基于firmware-realtek或另一个维护的包的解决方案。
  • 如果需要的话,我愿意升级到 Debian 11 bullseye,因为无论如何我都打算这样做。
  • 我想知道是否有一些安装步骤我说过我永远不需要wifi。

你能帮我吗?

答案1

经过一段时间并完全升级到 Debian bullseye 之后,我认为最好的可用解决方案是从这个 github 仓库,这比提议于这个 Debian 维基页面存档版本)。

根据回购协议中建议的说明自述文件,以下内容在 Debian 11.4 bullseye 中对我有用Linux 5.10.0-16-amd64 #1 SMP Debian 5.10.127-2 (2022-07-23) x86_64 GNU/Linux

sudo apt install git linux-headers-generic build-essential dkms
git clone https://github.com/Mange/rtl8192eu-linux-driver
cd rtl8192eu-linux-driver
sudo dkms add .
sudo dkms install rtl8192eu/1.0
echo "blacklist rtl8xxxu" | sudo tee /etc/modprobe.d/rtl8xxxu.conf

不确定最后一行是否需要将 rtl8xxxu 列入黑名单。重启后会自动加载驱动:

$ usb-devices|grep -C 4 Realtek

T:  Bus=02 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  2 Spd=480 MxCh= 0
D:  Ver= 2.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=2357 ProdID=0107 Rev=02.00
S:  Manufacturer=Realtek
S:  Product=802.11n NIC
S:  SerialNumber=00e04c000001
C:  #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=500mA
I:  If#=0x0 Alt= 0 #EPs= 5 Cls=ff(vend.) Sub=ff Prot=ff Driver=rtl8192eu

$ sudo iw dev
phy#0
       Interface wlxd037458b4186
               ifindex 3
               wdev 0x1
               addr d0:37:45:8b:41:86
               ssid eduroam
               type managed
               txpower 12.00 dBm

在buster下,我还附加了以下内容 /etc/NetworkManager/NetworkManager.conf

[device]
wifi.scan-rand-mac-address=no

遵循Debian 维基指南,我不确定是否还有必要。

相关内容