GSMモデムは/ dev / ttyUSBファイルを生成しません。

GSMモデムは/ dev / ttyUSBファイルを生成しません。

インストールしましたカーネルサーバーのセクションで説明されているように、GSM 3G USBモデムを使用してSMSメッセージを送信したいと思います。SMSセンター> GSMモデムチャンネルユーザーガイド。

私のラップトップにKannelを正常にインストール、設定、テストしました。

モデムをラップトップに接続すると、/dev/ttyUSB0 名前が 。モデムにコマンドを送信するシリアルポートとして機能します。

このデバイスをKannel設定ファイルに入れる必要があります。

いくつかのテストの後、本番サーバーにKannelをインストールすることにしました。サーバー実行中Linux仮想サーバー、私の使命は 所有者そしてPlaySMSの一つゲスト、Apacheを実行します。

問題は、ttyUSB0私のコンピュータ(私が知っている限り、すべての一般的なLinuxコンピュータ)で作成されたデバイスに似たデバイスが見つからないことです。

以下はいくつかの診断コマンドです。使用されたモデムは同じモデルではありませんが、私のラップトップでSierra 308をテストしましたが、うまくいきます。

私のラップトップ - Arch Linux

uname -a:

Linux twoflower 3.4.9-1-ARCH #1 SMP PREEMPT Wed Aug 15 18:11:01 UTC 2012 i686 GNU/Linux

dmesgモデム(Huawei 156B)を接続すると:

[35328.849886] usb 1-2: new high-speed USB device number 12 using ehci_hcd
[35329.007281] scsi9 : usb-storage 1-2:1.2
[35329.010054] scsi10 : usb-storage 1-2:1.3
[35329.301153] usbcore: registered new interface driver usbserial
[35329.302155] usbcore: registered new interface driver usbserial_generic
[35329.303064] USB Serial support registered for generic
[35329.303221] usbserial: USB Serial Driver core
[35329.368043] usbcore: registered new interface driver option
[35329.368960] USB Serial support registered for GSM modem (1-port)
[35329.369332] option 1-2:1.0: GSM modem (1-port) converter detected
[35329.377484] usb 1-2: GSM modem (1-port) converter now attached to ttyUSB0
[35329.377567] option 1-2:1.1: GSM modem (1-port) converter detected
[35329.378930] usb 1-2: GSM modem (1-port) converter now attached to ttyUSB1
[35330.013635] scsi 9:0:0:0: CD-ROM            HUAWEI   Mass Storage     2.31
PQ: 0 ANSI: 2
[35330.019275] scsi 10:0:0:0: Direct-Access     HUAWEI   MMC Storage      2.31
PQ: 0 ANSI: 2
[35330.028997] sd 10:0:0:0: [sdb] Attached SCSI removable disk
[35330.214473] sr0: scsi-1 drive
[35330.214484] cdrom: Uniform CD-ROM driver Revision: 3.20
[35330.216603] sr 9:0:0:0: Attached scsi CD-ROM sr0

サーバー - Debian Reny

uname -a:

Linux macunaima 2.6.26-1-vserver-amd64 #1 SMP Fri Mar 13 20:19:13 UTC 2009 x86_64 GNU/Linux

dmesgモデム(Sierra 308)を接続すると:

  [    3.246112] usb 8-4: new high speed USB device using ehci_hcd and address 2
  [    3.381966] usb 8-4: config 1 has an invalid interface number: 9 but
  max is 5
  [    3.382076] usb 8-4: config 1 has an invalid interface number: 7 but
  max is 5
  [    3.382184] usb 8-4: config 1 has no interface number 2
  [    3.382285] usb 8-4: config 1 has no interface number 5
  [    3.384576] usb 8-4: configuration #1 chosen from 1 choice
  [    3.389070] usb 8-4: New USB device found, idVendor=0f3d,
  idProduct=68a3
  [    3.389070] usb 8-4: New USB device strings: Mfr=3, Product=2,
  SerialNumber=4
  [    3.389070] usb 8-4: Product: USB 308
  [    3.389070] usb 8-4: Manufacturer: Sierra Wireless, Incorporated
  [    3.389070] usb 8-4: SerialNumber: 353354045586405

lsusb:

Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 008 Device 002: ID 0f3d:68a3 Airprime, Incorporated
Bus 008 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

前の質問

同様の問題でここで見つけた唯一の以前の質問は次のとおりです。/ devにエントリを入力せずにUSBシリアルポートにアクセスするにはどうすればよいですか?

彼のケースではdmesgこれが生成されたと述べていますが、ttyUSB0私の場合はこれは起こりません。

mknodとにかく、手動でデバイスを作成するために公開されたソリューションを試してみました。

for i in 0 1 2 3 4 5 6 7 8 9; do
    sudo mknod /dev/ttyUSB$i c 188 $i
done

lsusbそのデバイスが接続されているため、これらのデバイスをすべて作成しましたBus 008 Device 002

動作しません。私はそれpicocomをテストしましたttyUSB0

$ picocom -
FATAL: cannot open /dev/ttyUSB0: No such device or address

私のラップトップではpicocomうまくいきます。

$ picocom -b 9600 /dev/ttyUSB0
Terminal ready
AT                      # my input
OK

ベストアンサー1

@Renanのコメントに同意します。この問題は最新のカーネルで解決されたようです。 (LKMLにそのような記事があります。)

コアミスはこれですinvalid interface number。これは、USBドライバがデバイスを見ることができますが、ドライバが予期せず対処できないように機能(インターフェイス)に番号が付けられていることを意味します。インターネット検索では、人々がこれらの最新のデバイスと奇妙なインターフェイス番号付けの動作を処理するためにカーネルの弱点を修正するいくつかのケースを見つけることができます。

間違ったインターフェイス番号付けのバグを説明する明確なドキュメントが見つからないか、カーネルxyzのすべてのUSBデバイスに対して修正されたため、100%確信できません。ほくろを打つ一種の開発努力。

サーバーからカーネルをアップグレードすることは決して簡単ではありません。仮説を確認するために、まず中間ステップを試してみましょう。 Debianのサーバーバージョンを仮想マシンに配置し、スナップショットを作成し、そこからカーネルをアップグレードし、アップグレード後にUSBデバイスが表示されることを確認します。 (もちろん、USBデバイスをVMにプッシュするには、VMソフトウェアを使用する必要があります。最近、ほとんどの人がそうします。)

それでも問題が解決しない場合は、スナップショットに簡単にロールバックできます。 VMは、本番サーバーに何かをリリースする前に、将来のテストに役立つ必要があるためです。

おすすめ記事