Nik*_* R. 4 usb modem usb-modem
我有华为调制解调器的问题。Ubuntu 16 不会将其检测为移动宽带调制解调器。我无法在我的网络连接中选择它。
$ lsusb
5266: executing lsusb
Bus 001 Device 004: ID 1bcf:2b8d Sunplus Innovation Technology Inc.
Bus 001 Device 003: ID 8087:0a2a Intel Corp.
Bus 001 Device 002: ID 8087:8001 Intel Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 002: ID 0bc2:ab20 Seagate RSS LLC Backup Plus Portable Drive
Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 002 Device 003: ID 12d1:14fe Huawei Technologies Co., Ltd. Modem (Mass Storage Mode)
Bus 002 Device 002: ID 047d:1042 Kensington Ci25m Notebook Optical Mouse [Diamond Eye Precision]
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
5266: executed
$
Run Code Online (Sandbox Code Playgroud)
你知道我能做什么吗?
我收到以下错误:
$ sudo grep 12d1 /lib/udev/rules.d/40-usb_modeswitch.rules ATTRS{idVendor}=="12d1", ATTR{bInterfaceNumber}=="00", ATTR{bInterfaceClass}=="08", RUN+="usb_modeswitch '%b/%k'"
grep: ATTRS{idVendor}==12d1,: No such file or directory
Run Code Online (Sandbox Code Playgroud)
的输出lsusb | grep Huawei是:
Bus 002 Device 006: ID 12d1:1506 Huawei Technologies Co., Ltd. Modem/Networkcard
Run Code Online (Sandbox Code Playgroud)
小智 5
根据您的lsusb输出,我认为您在谈论由 T-Mobile NL 提供的华为 E352 USB 3G/4G 调制解调器。这很可能是 Windows 引起的问题。Windows 首先需要安装 USB 调制解调器驱动程序才能安装设备。华为(和其他公司)没有提供带有驱动程序的迷你 CD 和 USB 调制解调器,而是在他们的设备上安装了一些闪存。因此,该设备最初将作为闪存安装。然后,在 Windows 机器上,安装程序将安装调制解调器驱动程序并最终更改设备设置,以便下次将其识别为调制解调器。
对于 Linux 用户来说,这是令人困惑的,因为他们的系统也会首先识别闪存,而不是调制解调器。并且不需要闪存存储,因为 Linux 内核已经具有所有必需的驱动程序。我认为您不需要安装任何驱动程序。
你需要的是usb-modeswitch工具。从 Ubuntu 存储库安装它:
sudo apt-get install usb-modeswitch
Run Code Online (Sandbox Code Playgroud)
以下命令需要以 root 身份运行。所以要适当注意你在做什么!
连接调制解调器并找到华为的供应商 ID 和产品 ID:
lsusb | grep Huawei
Run Code Online (Sandbox Code Playgroud)
你会发现你已经知道的:
Bus 002 Device 003: ID 12d1:14fe Huawei Technologies Co., Ltd. Modem
Run Code Online (Sandbox Code Playgroud)
供应商 ID 为“12d1”,产品 ID 为“14fe”。
usb-modeswitch在tar存档中有很多现成的配置文件。首先在存档中找到您设备的配置文件:
grep 12d1 /lib/udev/rules.d/40-usb_modeswitch.rules ATTRS{idVendor}=="12d1", ATTR{bInterfaceNumber}=="00", ATTR{bInterfaceClass}=="08", RUN+="usb_modeswitch '%b/%k'"
Run Code Online (Sandbox Code Playgroud)
然后从存档中提取您的配置文件:
tar xf /usr/share/usb_modeswitch/configPack.tar.gz 12d1\:14fe
Run Code Online (Sandbox Code Playgroud)
并提出:
cat 12d1\14fe
Run Code Online (Sandbox Code Playgroud)
大概会说:
# T-Mobile NL (Huawei E352)
TargetVendor=0x12d1
TargetProductList="1506,150f,151d"
HuaweiNewMode=1
Run Code Online (Sandbox Code Playgroud)
最后更改华为设备上的设置:
usb_modeswitch -v 12d1 -p 14fe -c 12d1\:14fe
Run Code Online (Sandbox Code Playgroud)
现在闪存驱动程序将被分离并激活调制解调器驱动程序。要检查一切是否顺利再次运行lsusb:
lsusb | grep Huawei
Run Code Online (Sandbox Code Playgroud)
如果一切顺利,您应该会看到另一个产品 ID。具有巨大可用性后果的微小更改。
在此之后,您可以像往常一样使用网络管理器设置您的 3G/4G 互联网连接。确保关闭 WiFi,因为 WiFi 和 GSM 不会同时运行。
如果您想跟踪您的数据使用情况,请安装该vnstat软件包。它是基于文本的,但提供了所有信息。您可能更喜欢 GUI,也可以添加vnstati包。
(非常感谢 Filip Vervloesem,他在荷兰 Linux 杂志 09/2017 问题中详细介绍了这个主题。)