x but different 217 Posted December 8, 2019 Share Posted December 8, 2019 Правило подключения устройств можно задать так: Будем подключать arduino leonardo, для примера. 1) Смотрим подключенное устройство: $ lsusb 2) Запоминаем цифры: Bus 003 Device 004: ID 2341:8036 Arduino SA Leonardo (CDC ACM, HID) 3) Создаём файл в: $ sudo vim /etc/udev/rules.d/10-arduino.rules 4) Прописываем в него SUBSYSTEMS==”usb”, ATTRS{idVendor}==”2341“, ATTRS{idProduct}==”8036“, MODE=”0666″, GROUP=”users” 2341 - vendor ID 8036 - product ID MODE - права на подключение в формате Linux правил. GROUP - группа пользователей, от кого будет инициировано подключение. Ключи соответствия: (SUBSYSTEMS=="XXX") условие верно или нет SUBSYSTEM - подсистема устройства; KERNEL - имя выдаваемое устройству ядром; DRIVER - драйвер обслуживающий устройство; SUBSYSTEMS - подсистема родительского устройства; ATTR - sysfs атрибут устройства; - Посмотреть все возможные sysfs параметры для устройства можно непосредственно в файловой системе /sys. Например, для диска /dev/sda есть каталог /sys/block/sda/ в котором можно найти файлы size, stat, ro, range и т д. Также посмотреть все возможные Udev параметры для устройства можно с помощью утилиты udevadm. Например, для диска /dev/sda: $ udevadm info -a -n ttyACM0 Для действий используются ключи: (NAME="xxx") Установка значения NAME - установить имя файла устройства SYMLINK - альтернативное имя устройства GROUP - группа у которой есть доступ к файлу OWNER - владелец файла устройства MODE - маска прав доступа RUN - выполнить скрипт при подключении устройства RUN+="/usr/bin/my_script" 5)Тестирование: udevadm test /sys/block/sda 6) Перезагрузим правила: $ sudo udevadm control --reload-rules Перезагрузим сервак. Следующее подключение устройства с новыми правилами будут. 1 Quote Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.