Перечислить все правила udev (например, для устройства)?

Можно включить ksh- стиль расширенный globbing с:

shopt -s extglob

И затем запишите something-!(*-foobar).txt

8
01.02.2015, 14:31
1 ответ

Если вы используете:

udevadm monitor

Вы получаете запись для каждого действия, предпринятые ядром и UDEV. Как правило, добавляют, изменить, удалить. Если вы включите опцию - свойство :

udevadm monitor --property

Вы получите список о том, какие свойства используются.


Как можно проверить правила UDEV с UDEVADM:

udevadm test $(udevadm info -q path -n <device>)

можно проверить что-то как это:

udevadm test $(udevadm info -q path -n <device>) 2>&1 | \
sed -n 's/.* \(\/[^ ]*\)\.rules:\([0-9]\+\)/\1.rules \2/p' | \
while read -r f n; do printf "%03d:%-50s " $n "$f"; sed -n ${n}p $f; done

, но не уверен, насколько это надежно. Во всяком случае, используя E.g. Видео1 для <Устройство> , которое может дать что-то вроде:

031:/lib/udev/rules.d/50-udev-default.rules            SUBSYSTEM=="video4linux", GROUP="video"
007:/lib/udev/rules.d/60-persistent-v4l.rules          IMPORT{program}="v4l_id $devnode"
009:/lib/udev/rules.d/60-persistent-v4l.rules          SUBSYSTEMS=="usb", IMPORT{builtin}="usb_id"
010:/lib/udev/rules.d/60-persistent-v4l.rules          KERNEL=="video*", ENV{ID_SERIAL}=="?*", SYMLINK+="v4l/by-id/$env{ID_BUS}-$env{ID_SERIAL}-video-index$attr{index}"
016:/lib/udev/rules.d/60-persistent-v4l.rules          IMPORT{builtin}="path_id"
017:/lib/udev/rules.d/60-persistent-v4l.rules          ENV{ID_PATH}=="?*", KERNEL=="video*|vbi*", SYMLINK+="v4l/by-path/$env{ID_PATH}-video-index$attr{index}"
015:/lib/udev/rules.d/73-seat-late.rules               TAG=="uaccess", ENV{MAJOR}!="", RUN{builtin}+="uaccess"
006:/etc/udev/rules.d/83-webcam.rules                  KERNEL=="video[0-9]", SUBSYSTEMS=="usb", ATTRS{idVendor}=="0c45", SYMLINK+="video-webcam1"

, но угадайте, что смотрите на тест , в целом лучше. Также обратите внимание на сообщение:

Эта программа предназначена только для отладки, она не запускает никакой программы указано клавишей Run. Это может показать неверные результаты, потому что Некоторые значения могут быть разными или недоступны при запуске моделирования.


Вы также можете установить

udev_log="debug"

в UDEV.conf и перезапустите UDEV ( перезагрузить udev ), чтобы получить несколько более многолетний выход.

8
27.01.2020, 20:12

Теги

Похожие вопросы