Кто-нибудь знает, возможно ли программно получить доступ к структуре данных, где udev
хранить правила? И возможно ли их модифицировать?
Короче говоря: я хочу запустить программу и вызвать тот же эффект добавления нового правила без фактического изменения каких-либо .rule
файл. Я хочу сохранить все это в памяти.
Если это возможно? Я читал Systemd код ищет информацию о том, как udevdaemon
читает .rules
файлы, а затем «передает» эти правила «кому-то» в ядре.
Я думаю, что это «общение» является ключом. Но я не могу его найти.
Я не думаю, что это можно добавить udev
правила другим способом, чем файлы конфигурации. Но если это важно для вас, вы все равно можете смонтировать tmpfs
на /etc/udev/rules.d
и напишите свои правила там, все будет происходить в памяти без удара по диску. Или вы можете реализовать свой собственный механизм конфигурации в src/udev/udev-rules.c
, Код должен был бы получить конфигурацию любым удобным для вас способом и вызвать rules_add_string
,
Что касается связи между ядром и udev
, udev
просто читает события ядра из сокета, а затем применяет его правила для создания соответствующих устройств в /dev
, Ядро никогда не получает udev
конфигурация, и это не заботится об этом.