
USB-シリアルコンバータが複数あります。特にそのうちの1つを訪問しなければなりません。 udevルールを使用して特別な名前を指定しました。最後の修正以降に再起動しました。
SUBSYSTEM=="usb", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60", NAME="serial", MODE="0666"
このベンダー/製品の組み合わせは、すべてのUSBデバイスの中で一意です。
$ ls -l /dev/serial
crw-rw-rw-. 1 root root 189, 133 Feb 8 23:57 /dev/serial
$ ls -l /dev/ttyUSB0
crw-rw----. 1 root dialout 188, 0 Feb 8 23:58 /dev/ttyUSB0
PuTTYを使用して読み込んでいますが、うまくいきますが、/dev/ttyUSB0
root/dev/serial
としてPuTTYを実行するとエラーが表示されます。
Unable to open connection to :
Unable to configure serial port
必要に応じてCentOS 6を実行しています。
uname -a
Linux xxxxxx 2.6.32-279.22.1.el6.x86_64 #1 SMP Wed Feb 6 03:10:46 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
編集:日
次のudevルールがついに機能しました。
SUBSYSTEM=="tty", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60", SYMLINK+="COM1", MODE="0666"
に変更されたのはSUBSYSTEM
USBではなくttyで、シリアルはCOM1に変更されました(コメント作成者が指摘したように/ dev / serialを妨げません)。NAME
SYMLINK+
助けてくれてありがとう!
答え1
tty
ルールがサブシステムではなくサブシステムに焦点を当てたいと思いますusb
。
SUBSYSTEM=="tty", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60", SYMLINK+="serial"
USBデバイスを接続すると、カーネルはデバイスに関する追加情報を認識するため、複数のudevイベントが生成されます。 USBデバイスなので、まずサブシステムを使用します。usb
これは、PuTTYが利用できない生のUSBデバイスを作成すると仮定します。いくつかの手順を実行すると、デバイス用の特定のドライバがロードされ、それはシリアルデバイスであるため、tty
PuTTYが使用できるデバイスファイルを生成するサブシステムに参加します。できる使用。
/dev/ttyUSB*
このルールは、デバイスに割り当てられたリンクへのシンボリックリンクを作成します。私のシリアルドングルでPuTTYを使用して正常にテストされました。
しかし、診断のために、udevスクリプトが見ている内容のアイデアを得るために、次の規則を実行します。
RUN+="/home/me/bin/udev-diag .$kernel .$number .$devpath .$id .$parent .$root .$tempnode"
本質的には次のようになりますudev-diag
。
env >>/tmp/udev-events
echo "$@" >>/tmp/udev-events
より一般的な用途には、udevmonitor
プログラムを使用するのも便利です。
答え2
Zanderの法則を利用すると、以前は私のUSBシリアルアダプタにアクセスできますが...ただPuTTYをrootとして実行する場合。
すべてのユーザーがアクセスできるように他の権限を指定するようにルールを変更します。
つまり
SUBSYSTEM=="tty", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60", MODE="0666", SYMLINK+="serial"
答え3
次のudevルールがついに機能しました。
SUBSYSTEM=="tty", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60", SYMLINK+="COM1", MODE="0666"
に変更されたのはSUBSYSTEM
USBではなくttyで、シリアルはCOM1に変更されました(コメント作成者が指摘したように/ dev / serialを妨げません)。NAME
SYMLINK+
答え4
このデバイスは、グループダイヤルアウトを介してグループ書き込みが可能です。
$ ls -l /dev/ttyUSB0
**crw-rw----** 1 root **dialout** 188, 0 Feb 8 23:58 /dev/ttyUSB0
この権限の問題を解決するには、ダイヤルアウトグループに自分自身を追加してください。
$ sudo adduser <username> dialout
その後、セッションを再開してください。