![在 3G 适配器上安装 USB 驱动器](https://linux22.com/image/28887/%E5%9C%A8%203G%20%E9%80%82%E9%85%8D%E5%99%A8%E4%B8%8A%E5%AE%89%E8%A3%85%20USB%20%E9%A9%B1%E5%8A%A8%E5%99%A8.png)
我有一个华为 HiLink E303 USB G3 互联网适配器,我想用它来连接到互联网。我正在使用 Arch Linux。根据这一页,Linux 驱动程序实际上在设备上并且可以相对容易地安装,包括在 Arch 上。但是,我无法实际安装该设备,因此无法提取驱动程序。基本上,该设备被识别为 USB 设备,然后立即加载为“CDC 以太网设备”。在上述教程中,技巧是安装设备然后加载驱动程序,但我无法这样做。检查日志时没有分配驱动器号(请记住,Arch 现在使用 systemd,因此不再有 /var/log/messages 等文件)。
这是一些输出:
$ journalctl -f
Feb 15 02:47:57 S1 kernel: usb 1-2: new high-speed USB device number 21 using ehci_hcd
Feb 15 02:47:58 S1 kernel: scsi12 : usb-storage 1-2:1.0
Feb 15 02:47:58 S1 kernel: usb 1-2: USB disconnect, device number 21
Feb 15 02:48:03 S1 kernel: usb 1-2: new high-speed USB device number 22 using ehci_hcd
Feb 15 02:48:04 S1 kernel: cdc_ether 1-2:1.0 eth0: register 'cdc_ether' at usb-0000:00:1d...2:63
Feb 15 02:48:04 S1 systemd-udevd[12873]: renamed network interface eth0 to enp0s29f7u2
$ lsusb
Bus 001 Device 024: ID 12d1:14db Huawei Technologies Co., Ltd.
... (other irrelevant devices)
$ ls /dev/disk/by-uuid
No new devices show up here
$ fdisk -l
No new devices show up here
$ ls /dev
No new devices show up here
由于没有提供驱动器号 - 甚至没有如教程页面所示的 cdrom 分配,我无法安装该设备。有人有什么想法吗?
另外,我最终想连接到互联网,所以如果有人知道连接到互联网的快捷方式,那也可以。我尝试运行ifconfig enp0s29f7u2 up
,确实激活了,但没有建立真正的连接。
答案1
仔细阅读 Arch Wiki 页面有关USB 3G 调制解调器和华为E220。
您的具体型号是在论坛中讨论这表明:
/usr/share/usb_modeswitch/12d1:14db
使用以下内容创建
# Huawei E303
DefaultVendor = 0x19d2
DefaultProduct = 0x14db
TargetVendor = 0x19d2
TargetProduct = 0x14db
MessageContent = "55534243123456780000000000000011062000000100000000000000000000"
编辑(或创建)/lib/udev/rules.d/40-usb_modeswitch.rules
并添加以下行
# Huawei E303
ATTRS {idVendor} == "12d1", ATTRS {idProduct} == "14db", RUN + = "usb_modeswitch '% b /% k'"
然后重新启动 udev,或拔下加密狗并重新插入。
您可能还需要安装 [3G 调制解调器 wiki 页面] 上列出的一些软件包(https://wiki.archlinux.org/index.php/USB_3G_Modem)。