Ubuntu 16.04はHuawei 15ca
USBモデムを認識しません。
どうすれば修正できますか?
このコマンドはうまくいきました。一度だけ実行する必要がありました。
lsusb
ベンダーと製品IDを書き留めます。私の場合、それぞれ12d1
と1f01
です。
Bus 002 Device 003: ID 05c8:038f Cheng Uei Precision Industry Co., Ltd (Foxlink)
Bus 002 Device 002: ID 0438:7900 Advanced Micro Devices, Inc.
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 004: ID 0bda:b008 Realtek Semiconductor Corp.
Bus 001 Device 003: ID 12d1:14db Huawei Technologies Co., Ltd. E353/E3131
Bus 001 Device 002: ID 0438:7900 Advanced Micro Devices, Inc.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
次に、これを1回実行します。
Sudo usb_modeswitch -v 12d1 -p 1f01 -J
これを修正する方法に関する指示は、14.04とは若干異なります。
これらの手順のいずれかは必要ないかもしれませんが、ここに私がそれを機能させる方法を示します。
vi /lib/udev/rules.d/40-usb_modeswitch.rules
次の行を追加します。
ATTR{idVendor}=="12d1", ATTR{idProduct}=="15ca", RUN+="usb_modeswitch '%b/%k'"
次に:
Sudo touch /etc/usb_modeswitch.d/12d1:15ca
次のコマンドを実行します:
Sudo usb_modeswitch -J -v 0x12d1 -p 0x15ca
使用可能なネットワーク接続の下に表示され、lsusbの下に別の製品番号が表示されます。
Bus 003 Device 008: ID 12d1:1506 Huawei Technologies Co., Ltd. Modem/Networkcard
モデムを動作させるには、再起動するか、モデムを数回取り外して再挿入する必要があります。また、接続の編集/モバイルブロードバンド接続の追加に忘れずに追加してください。
今日はこの問題がありました。 12d7:1505
モデムがうまく機能するUbuntu 16.04を搭載したコンピューターが2台ありました。
私は別のものを買ったが、それなしでは動作しません
Sudo usb_modeswitch -v 12d1 -p 1506 -J
コマンド。
別のudev
ルールで修正しました。
このコンテンツに/etc/udev/rules.d/huawei.rules
ファイルを追加します。
ACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="12d1", ATTRS{idProduct}=="1505", RUN+="/usr/sbin/usb_modeswitch -v 12d1 -p 1506 -J"
次に再起動するか、Sudo udevadm control -R
を実行してモデムを挿入します。モデムが起動するまで約30秒待つ必要があります。その後、使用できます。
これを自動化したいですか?モデムのプラグを差し込んだ場合、再度設定する必要はありません。
最初
Sudo nano /etc/usb_modeswitch.conf
このコードをコピーしてください
# HUAWEI E3131 DefaultVendor=0x12d1 DefaultProduct=0x15ca TargetVendor=0x12d1 TargetProduct=0x1506 MessageContent="55534243123456780000000000000a11062000000000000100000000000000"
保存して、端末でこれを実行します
Sudo usb_modeswitch -c /etc/usb_modeswitch.conf
モデムが検出され、インターネットへの接続に使用できる場合、この設定は有効です。
これらのソリューションはどれも私の16.04では動作しません。 (udevルールは14.04で完全に機能しました)。
つまり、これでうまくいくこともありますが、非常にまれです。これらの手動コマンドをテストしました
usb_modeswitch -v 12d1 -p 15ca -V 12d1 -P 1506 -M "55534243123456780000000000000011062000000100000000000000000000"
そして
/usr/sbin/usb_modeswitch -J -v 0x12d1 -p 0x15ca
そして、彼らは仕事をしますが、手で入力されたとしても、毎回ではありません。デバイスは、半分以上のケースで「マスストレージ」としてリストされたままです。
:(
そのため、非常に汚い解決策を使用する必要がありました。後者をルートのcrontabに追加して、10秒ごとに実行しました。ばかげていることは知っていますが、このような状況ではこれ以上良いことは考えられません。デバイスが大容量記憶装置としてリストされている場合、コマンドは機能します(既にモデムになっている場合は、「デフォルトモードのデバイスが見つかりません。何もしません。さようなら!」というメッセージで終了します。正常に動作するモデム。
これは愚かですが、誰かがそれを使用したい場合のために、ここに私のcrontabエントリがあります:
* * * * * /usr/sbin/usb_modeswitch -J -v 0x12d1 -p 0x15ca > /dev/null 2>&1
* * * * * sleep 10; /usr/sbin/usb_modeswitch -J -v 0x12d1 -p 0x15ca > /dev/null 2>&1
* * * * * sleep 20; /usr/sbin/usb_modeswitch -J -v 0x12d1 -p 0x15ca > /dev/null 2>&1
* * * * * sleep 30; /usr/sbin/usb_modeswitch -J -v 0x12d1 -p 0x15ca > /dev/null 2>&1
* * * * * sleep 40; /usr/sbin/usb_modeswitch -J -v 0x12d1 -p 0x15ca > /dev/null 2>&1
* * * * * sleep 50; /usr/sbin/usb_modeswitch -J -v 0x12d1 -p 0x15ca > /dev/null 2>&1
デバイスは、10秒または20秒後に動作を開始します(コマンドを2回実行する必要がある場合-ほとんどの場合)。
また、これを/ etc/fstabに追加して、挿入直後にUSB大容量ストレージをマウントしようとするのを防ぎました。これにより、CDが挿入されたときに通常表示される[ファイルを開く]ウィンドウが表示されなくなります。
/dev/sr0 on /media/username/PLAY\ ONLINE iso9660 noauto
(デバイスがマウントされた後にマウントコマンドが表示する内容に従ってマウント場所を調整する必要があります-私のモバイルプロバイダーの名前であるPLAY ONLINEフォルダーにマウントします)。