红联Linux门户
Linux帮助

ubuntu上识别华为4G上网卡USB模式

发布时间:2017-03-10 11:08:03来源:linux网站作者:Cris_Q
因为实验室不给配宽带,只能自己买华为的上网卡设备,装一个北京电信的无限流量卡上网,以前在win平台用的挺好的,现在到了ubuntu平台之后发现一个问题。
 
如果这个网卡启动以后,直接插在我的ubuntu系统里面,usb是无法识别出这个上网卡的,虽然lsusb能看到这个设备,但是他的方式是以mass storage存在的,也就是这个设备第一次连接在windows上一样,就像一个光盘,里面有驱动,安装以后,windows就不会把这个当做一个光盘,而是一个网卡了。可是那个里面的内容是win平台的驱动啊,我在ubuntu上根本用不了。
 
一开始狂找驱动,结果人家不提供linux平台的驱动,没有这个下载口,但是偶然之间(因为我的电脑是双系统:win7+ubuntu),我发现在win7上启动以后,能够上网了,然后这个时候重启,赶紧进入ubuntu,这个时候网卡被识别出来了,lsusb指令也显示,这个usb设备后面没有跟mass storage字符了。
 
但是这样用起来还是很不方便,因为每次我开机要先进win7,再重启到ubuntu,很麻烦,而且还有一个,如果我一旦不小心碰到了脆弱的usb口,这玩意儿接触不良,需要拔插设备重连,或者因为4G信号不好等原因我要重启这个设备,然后ubuntu把它当做光盘给我显示mass storage mode,又要注销计算机,进win7,重启,回ubuntu,真的麻烦。
 
所以现在要解决这个问题,需要依靠一个叫做usb-modeswitch的软件。我用apt-get install显示已经安装,剩下的就是配置了。
 
首先在lsusb中记住这个设备的id,比如我这里是:
Bus 001 Device 011: ID 12d1:14db Huawei Technologies Co., Ltd. E353/E3131
 
然后:
sudo vim /lib/udev/rules.d/40-usb_modeswitch.rules
 
最后一行往上,加入:
#Huawei
ATTR{idVendor}=="12d1", ATTR{idProduct}=="14db", RUN+="usb_modeswitch '%b/%k'"
 
保存,重启。然后现在不管怎么拔插网卡,重启网卡,ubuntu都能识别它了。
 
本文永久更新地址:http://www.linuxdiyf.com/linux/29066.html