Я добавил правило udev для создания отдельной ссылки на специальное устройство tty. Я взял поставщика и идентификатор продукта из lsusb:
Bus 001 Device 016: ID abcd:1234 Foo Device
Выход dmesg
для устройства:
[ 369.384850] usb 1-1.1: new full-speed USB device number 4 using xhci_hcd
[ 369.470492] usb 1-1.1: New USB device found, idVendor=09d8, idProduct=0420
[ 369.470506] usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 369.470515] usb 1-1.1: Product: TWN4/B1.06/CCL3.12/PRS1.04
[ 369.470522] usb 1-1.1: Manufacturer: OEM
[ 369.475188] cdc_acm 1-1.1:1.0: ttyACM0: USB ACM device
Обычно система Debian генерирует tty ACM* для этого устройства:
$ ls /dev/ttyACM*
/dev/ttyACM0
Итак, я создал /ect/udev/rules.d/99-bizrfid.rules
:
ACTION=="add", ATTRS{idVendor}=="09d8", ATTRS{idProduct}=="0420", SYMLINK+="ttyMyDevice"
Но ls /dev/tty*
не показывает ttyMyDevice
.
Что я пробовал до сих пор без успеха:
- Бег
udevadm trigger
. Это должно применить новое правило udev. - Я сделал перезагрузку.
- Я посмотрел на
udevadm test /dev/ttyACM0
. Мой udevrule показан в конце. Так что я уверен, что это не было отменено. Но меня интересует подсказка «невозможно открыть». Тем не менее, эта подсказка присутствует и для других tty, таких как tty0 или ttyS0.
... Reading rules file: /lib/udev/rules.d/98-systemd.rules Reading rules file: /etc/udev/rules.d/99-bizrfid.rules rules contain 49152 bytes tokens (4096 * 12 bytes), 12883 bytes strings 4240 strings (40079 bytes), 3515 de-duplicated (27922 bytes), 726 trie nodes used unable to open device '/sys/dev/ttyACM0' Unload module index Unloaded link configuration context.
- Я снова подключил USB-устройство.
- Я попробовал другое правило udev. Это правило верно на 100%, потому что я уже использую это правило для других устройств. Но это не работает для ttyACM0:
ACTION=="add", KERNEL=="ttyACM*", MODE="0666"
Интересно, почему это не работает. Как найти причины, по которым правило udev не применяется?
dmesg
? Это = помогло бы нам также узнать, что это за USB-устройство и фактические значения. - person tukan   schedule 19.04.2021dmesg
. - person eDeviser   schedule 19.04.2021idVendor=09d8, idProduct=0420
поддерживаемого. - person tukan   schedule 19.04.2021dmesg
говорит, что я использую драйверcdc_acm
. Я НЕ скомпилирован по индивидуальному заказу. - person eDeviser   schedule 19.04.2021udevadm test -a add $(udevadm info -q path -n /dev/ttyACM0)
, что будет возвращено? - person tukan   schedule 19.04.2021dialup
иtty
? - person tukan   schedule 20.04.2021SUBSYSTEM="usb"
? - person stark   schedule 20.04.2021SUBSYSTEM="usb"
не сработало. - person eDeviser   schedule 21.04.2021Invalid rule /etc/udev/rules.d/99-bizrfid.rules:1: invalid ACTION operation
. Пожалуйста, покажите нам фактическое правило99-bizrfid.rules
, а не заглушку, как вы сделали в своем вопросе. - person tukan   schedule 21.04.2021cat
из99.bizrfid.rules
. Это почти то же самое. Ошибка Invalid rule... возникла из-за того, что сегодня утром я попробовал что-то еще и забыл=
. Правило теперь действительно такое же, как указано, и я обновил вывод файлаudevadm test...
. Извините за эту путаницу. - person eDeviser   schedule 21.04.2021SUBSYSTEM=="tty"
. - person 0andriy   schedule 21.04.2021