2

専用のネットブックをハードウェア プラットフォームとして使用するモバイル アプリケーションに取り組んでおり、ソフトウェアは arch Linux で実行されます。モバイル インターネット アクセスを有効にするために、セットアップに gsm モデムを統合したいと考えています。モデムは USB 経由で接続されています。私のソフトウェアはモデムの固定デバイス名を想定しているため、プラグインされたモデム デバイスへのシンボリック リンクを作成するカスタム udev-rule を使用しようとしています。現在の udev ルールは次のようになります。

SUBSYSTEM=="tty", ATTRS{idVendor}=="12d1", ATTRS{idProduct}=="140c", MODE="0666", SYMLINK+="gsm"

問題は、モデムを接続すると、次のように 2 つのデバイスが作成されたように見えることですdmesg

[ 3955.586471] option 1-1:1.2: GSM modem (1-port) converter detected
[ 3955.587286] usb 1-1: GSM modem (1-port) converter now attached to ttyUSB1
[ 3955.587946] option 1-1:1.3: GSM modem (1-port) converter detected
[ 3955.588637] usb 1-1: GSM modem (1-port) converter now attached to ttyUSB2

モデムとの通信は でのみ機能するようttyUSB2です。ただし、udev によって作成されたシンボリック リンクは常に を指しているように見えるためttyUSB1、モデムとの通信には使用できません。誰かがこの動作を説明して、どうすれば変更できるか教えてもらえますか?

ルールをより具体的にするために、すでに udevadm info を使用して識別可能な属性を見つけようとしました。デバイスの違いは だけのようですが、bInterfaceNumberその属性を udev ルールに含めることができませんでした。

4

0 に答える 0