Какие udev-атрибуты действительно доступны во время горячего / холодного подключения?

Удеву трудно отлаживать. – Виргинская среда во время загрузки системы всегда отклоняется, по крайней мере, от среды во время последующего повторного запуска.

Таким образом, я пытаюсь написать udev-правила с пониманием udev вместо проб и ошибок.

Одна большая проблема: какие атрибуты udev доступны во время горячего / холодного подключения?

Путаница исходит из этих двух команд:

udevadm test /sys/class/net/wlx801f024ddc32 udevadm info --attribute-walk --path=/sys/class/net/wlx801f024ddc32 

Оба, например, перечисляют SUBSYSTEM , который, как я знаю, доступен для udev-правил. Но только у первого есть DEVTYPE (по крайней мере для устройств DEVTYPE ), а только у последнего есть KERNEL .

Я действительно нуждаюсь в DEVTYPE (будучи «wlan») во время загрузки, но кажется, что он недоступен, когда правила пинают …

  • Настройка FreeBSD Broadcom BCM43225
  • Случайно удалил wifi-устройство wlan0
  • Почему мой чипсет BCM43142 не распознается и устройство wlan0 не найдено?
  • Какой живой linux размером более 2 ГБ и с предварительно установленным `wpa_supplicant` лучше всего подходит для установки Gentoo?
  • wpa_supplicant не автоматически изменяет AP
  • Как сканировать WLAN RSSI в командной строке?
  • Почему мой интерфейс wlan0 на Angstrom (Beagleboard) «не связан»?
  • Нужна помощь с установкой драйвера TPLink AC600
  • One Solution collect form web for “Какие udev-атрибуты действительно доступны во время горячего / холодного подключения?”

    Вот мое понимание:

    • udevadm info -a : показывает атрибуты ATTRS{} и иерархию устройств.
    • udevadm test : показывает переменные ENV{} во время обработки udev.

    Они не показывают один и тот же тип информации. Ваша переменная DEVTYPE может существовать и должна быть проверена как ENV{DEVTYPE}=="wlan" . Однако следует учитывать, что переменные ENV {} создаются постепенно во время обработки udev. Поэтому порядок вашего правила имеет значение, и он должен появиться после того, как ENV{DEVTYPE} был создан другим правилом.

    Вы можете проанализировать файл 'udev_actions.txt' из приведенной ниже команды, чтобы определить, как упорядочиваются вещи. Затем вы можете выбрать лучший номер для вашего файла .rules, чтобы проверить ENV{DEVTYPE} .

     $ sudo udevadm test $DEVPATH 1> udev_ENV.txt 2> udev_actions.txt 
    Interesting Posts

    как подсчитать длину массива, определенного в bash?

    Имеются ли команды nautilus и командной строки?

    Как прокомментировать несколько строк одновременно?

    Удаление определенных типов файлов, кроме папки

    Есть ли способ для файлов кошек по мере их создания?

    Конкретный способ вывода в файл, если задан аргумент, в stdout в противном случае

    Почему более новые версии awk печатают большие целые числа вместо десятичных знаков?

    Как создать системную цель?

    Монитор Intel HDMI не распознается

    Как комментировать snmpmibd и snmpd в rc.tcpip в AIX с помощью sed?

    USB-устройства, не отображающие

    Может ли Linux настроиться на ожидание перезагрузки USB-хранилища, вместо того, чтобы возвращать ошибку ввода-вывода

    Установка docker зависает при настройке докер-двигателя на ubuntu xenial

    Ошибка lsusb – не может получить идентификатор / дескриптор устройства: ресурс временно недоступен

    wget не останавливается

    Linux и Unix - лучшая ОС в мире.