3.7.8 udevadm — утилита управления менеджером устройств udev
Синтаксис утилиты udevadm
Опции утилиты udevadm
Команды утилиты udevadm
Примеры работы с утилитой udevadm
Окружение
- Версия ОС: 8
- Конфигурация ОС: Рабочая станция
- Редакция ОС: Стандартная, Образовательная
- Версия ПО: systemd-253.30-2
Драйверы устройств являются частью ядра Linux. Их основные функции заключаются в обнаружении устройств и отслеживании изменений их состояния. После загрузки драйвера устройства в память из ядра обнаруженные события отправляются демону пользовательского пространства udevd, который принимает решение о дальнейших действиях.
Система управления устройствами udev содержит обширный набор правил, которые сопоставляются с экспортированными значениями события и свойствами обнаруженного устройства. Определенное правило может задать имя и создать узел устройства, а также запустить программы для настройки устройства.
udevadm — это утилита для диагностики, мониторинга и управления работой системы udev.
Главными возможностями утилиты являются:
- получение информации об устройствах из базы данных udev;
- запрос событий устройства у ядра;
- отслеживание очереди событий udev;
- управление поведением демона udevd;
- отслеживание событий ядра uevents и событий, отправляемых правилами udev;
- имитация запуска событий udev для выбранного устройства и вывод отладочной информации;
- проверка корректности правил udev.
Синтаксис утилиты udevadm
Синтаксис утилиты имеет вид:
udevadm [<опции>] <команда> [<параметры_команды>]
где:
- <опции> — опции утилиты udevadm;
- <команда> — команды утилиты udevadm;
- <параметры_команды> — параметры команд.
Опции утилиты udevadm
Основными опциями утилиты udevadm являются:
-
-V,--version— вывести версию утилиты; -h,--help— вывести краткую справку по утилите.
Команды утилиты udevadm
Для своей работы утилита udevadm требует ввода команды и специфичных для команды параметров.
Основными командами утилиты являются:
1. Команда для получения информации об устройстве:
udevadm info <параметр>
Параметры команды:
-
-q,--query=<тип>— выполнить запрос к базе данных для получения данных об устройстве указанного типа. Допустимые типы:name,symlink,path,property,all; -
--property=<имя>— при отображении свойств устройств с помощью параметра--query=propertyограничить запрос данных об устройствах списком имен, разделенных запятыми; -
-p,--path=<путь_к_устройству>— запросить информацию об устройстве через путь /sys/, например, [/sys/]/class/block/sda. Команда udevadm info --path=/class/block/sda эквивалентна команде udevadm info /sys/class/block/sda; -
-n,--name=<имя_файла>— запросить информацию об устройстве с указанным именем. Команда udevadm info --name=sda эквивалентна команде udevadm info /dev/sda; -
-r,--root— вывести абсолютные пути в запросах по именам или символическим ссылкам; -
-t,--tree— отобразить дерево sysfs. Команда с использованием данного параметра рекурсивно перебирает иерархию sysfs и отображает её в виде древовидной структуры. Если указан путь, отображаeтся только поддерево ниже указанного пути и связи «родитель-потомок» для конкретного устройства; -
-e,--export-db— экспортировать содержимое базы данных udev.
2. Команда для запроса событий устройства у ядра:
udevadm trigger <параметр>
Параметры команды:
-
-v,--verbose— вывести список устройств, которые будут активированы; -
-n,--dry-run— имитировать запрос события для устройства. Показывает, что произошло бы при реальном выполнении команды udevadm trigger, но без фактической отправки событий; -
-q,--quiet— отключить запись ошибок в журнал событий; -
-t,--type=<тип_устройства>— запустить определенный тип устройств. Допустимые типы:all,devicesиsubsystems. Значение по умолчанию —devices; -
-c,--action=<действие>— инициировать действие. Возможные действия: -
add— добавить; -
remove— удалить; -
change— изменить; -
move— переместить; -
online— онлайн; -
offline— оффлайн; -
bind— привязать; -
unbind— отвязать.
3. Команда для отслеживания очереди событий udev и завершения работы после обработки всех текущих событий:
udevadm settle <параметр>
Параметры команды:
-
-t,--timeout=<время_в_секундах>— задать максимальное время ожидания (в секундах) освобождения очереди событий. Значение по умолчанию — 120 секунд; -
-E,--exit-if-exists=<имя_файла>— прекратить ожидание появления файла.
4. Команда управления состоянием запущенной службы:
udevadm control <параметр>
Параметры команды:
-
-e,--exit— завершить работу systemd-udevd; -
-l,--log-level=<значение>— установить внутренний уровень журналирования службы systemd-udevd. Допустимые значения — числовые приоритеты syslog или их текстовое представление:-
emerg, (0) — сообщения о критических ошибках, которые могут привести к сбою системы; alert, (1) — сообщения об ошибках, требующих немедленного вмешательства;crit, (2) — сообщения о критических ошибках, которые не требуют немедленного вмешательства, но указывают на серьезные проблемы;err, (3) — сообщения об ошибках, которые не влияют на работу службы, но могут затруднить ее функционирование;warning, (4) — предупреждения о потенциальных проблемах;notice, (5) — информационные сообщения, которые могут быть полезны для администраторов;info, (6) — общие информационные сообщения о работе службы;debug, (7) — отладочная информация.
-
-
-s,--stop-exec-queue— сообщить службе systemd-udevd о необходимости прекратить выполнение новых событий. Входящие события будут поставлены в очередь; -
-S,--start-exec-queue— сообщить systemd-udevd о разрешении выполнения событий; -
-R,--reload— отправить сигнал systemd-udevd для перезагрузки файлов правил и других баз данных, таких как индекс модулей ядра. Перезагрузка правил и баз данных не вносит никаких изменений в уже существующие устройства; новая конфигурация будет применена только к новым событиям; -
-m,--children-max=<значение>— установить максимальное количество событий, которые systemd-udevd сможет обработать одновременно. Если указано значение 0, то максимальное количество определяется, исходя из системных ресурсов; -
--ping— проверить запущена ли служба systemd-udevd; -
-t,--timeout=<время_в_секундах>— задать максимальное время (в секундах) ожидания ответа от systemd-udevd.
5. Команда для отслеживания событий устройств и событий правил udev:
udevadm monitor <параметр>
Параметры команды:
-
-k,--kernel— вывести события ядра; -
-u,--udev— вывести событие udev после обработки правила; -
-p,--property— вывести свойства события.
6. Команда, имитирующая запуск события udev для выбранного устройства и выводящая отладочную информацию:
udevadm test <параметр>
Параметры команды:
-
-a,--action=<действие>— задать тип события, которое необходимо смоделировать. Возможные действия:add— добавить;remove— удалить;change— изменить;move— переместить;-
online— в сети; offline— не в сети;-
bind— привязать; unbind— отвязать.
7. Команда для блокирования блочных устройств на время их изменений:
udevadm lock <параметр>
Параметры команды:
-
--device=<путь_к_устройству>— указать путь к устройству, которое нужно заблокировать.
Примеры работы с утилитой udevadm
Подробную информацию о возможностях утилиты udevadm можно найти в наших инструкциях:
Дата последнего изменения: 13.04.2026
Если вы нашли ошибку, пожалуйста, выделите текст и нажмите Ctrl+Enter.