GNU/Linux >> Linux の 問題 >  >> Linux

複数ノードの USB デバイスに一致する Udev ルール

すべてのルールに構文エラーがあります:

<オール>
  • = 割り当て == 用です は比較用なので、実際には DEV を見ていませんでした 等しい、あなたはそれを割り当てていました。
  • ,が必要です すべてのステートメントの間で、SYMLINK+= の前には何もありませんでした .
  • 拳法

    ACTION=="add", DEV=="/devices/platform/pxa27x-ohci/usb1/1-2/1-2.2/1-2.2:1.0", SYMLINK+="huawey0"
    

    第二のルール

    ACTION=="add", KERNEL=="1-2.2:1.0", SYMLINK+="huawey0"
    

    第三のルール

    ACTION=="add", DEV=="/devices/platform/pxa27x-ohci/usb1/1-2/1-2.2/1-2.2:1.[0-4]", ATTR{bInterfaceNumber}=="00", SYMLINK+="huawey0"
    

    第 4 のルール

    ACTION=="add", ATTR{bInterfaceNumber}=="00", SYMLINK+="huawey0"
    

    これらのルールはすべて、今すぐやりたいことを実行する必要があります (個人的には最初のルールを使用します)。


    この投稿は 3 年前に尋ねられたものであり、これでは答えにならないかもしれませんが、将来の参考のためにここで私の成功体験を共有したいと思います.

    Jens Reimann の Identify GSM modem devices using udev によると、「デバイス属性「bInterfaceNumber」は tty デバイスではなく、親階層の usb デバイスにあります」ということで、FTDI usb-to-4- 用に 2 つのルールを作成しました。ポートシリアルアダプタ:

    SUBSYSTEMS=="usb", ENV{.LOCAL_ifNum}="$attr{bInterfaceNumber}"
    
    SUBSYSTEM=="tty", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6011", SYMLINK+="ttyUSB_FTDI_4_PORT_%E{.LOCAL_ifNum}"
    
    <ブロック引用>

    これにより、属性「bInterfaceNumber」が環境変数「.LOCAL_ifNum」に格納されます(接頭辞のドットは、一時変数または非表示変数の表記です)。 2 番目のルールでは、同じ変数が「%E」構文を使用して取得されます。新しい udev バージョンは、「%E」の代わりに「$env」もサポートしています。
    (イェンス・ライマン著)

    どこで ttyUSB_FTDI_4_PORT_ シンボリックリンク名です。これらの 2 つのルールは、シンボリック リンクを ttyUSB_FTDI_4_PORT_00 として作成します。 、 ttyUSB_FTDI_4_PORT_01ttyUSB_FTDI_4_PORT_02ttyUSB_FTDI_4_PORT_03 . ATTRS{serial} 追加できます 列挙をさらに制限する属性

    Jens Reimann はまた、Ketan Patel の U&L の質問、モデムが機能していない Udev ルール ファイルの貢献を認め、derobert による回答が受け入れられました。


    Linux
    1. USBデバイスが削除されたときにシェルスクリプトでイベントをトリガーする方法は?

    2. Linux – UdevはUsbイーサネットデバイスの名前を変更しませんか?

    3. Linux –論理的に切断されたUSBデバイスを再接続する方法は?

    1. USB HIDデバイスのアクセス許可を変更するようにUdevを構成しますか?

    2. Python でわかりやすいデバイス名を取得する

    3. USB デバイスの消費電力を取得する

    1. Linux – Udevルール:デバイス#26の後にカーネルデバイス(パーティションではなく)のみを一致させる方法は?

    2. Node.jsの競合:/ sbin/nodeと/usr/ bin / node?

    3. USB バージョン 1.1 または 2.0 を確認する方法