Сейчас "persistent-net"-машинерия генерирует один файл на машину и при необходимости изменить список отображений hwaddr->name патчит общий файл с правилами. Наш udev вне зависимости от используемого service manager умеет читать .link-файлы, которые умеют перекрывать друг друга (файлы в /etc имеют приоритет над генератами в /run, которые имеют приоритет над файлами в /lib). Соответственно, правила отображения сетевых интерфейсов в назначенные имена просто могут не быть udev-правилами. Предлагаю вместо правил в /etc генерировать link-файлы в /etc, по файлу на каждый интерфейс. Цитата из systemd.link(5) > Example 2. /etc/systemd/network/10-dmz.link > > This example assigns the fixed name "dmz0" to the interface > with the MAC address 00:a0:de:63:7a:e6: > > [Match] > MACAddress=00:a0:de:63:7a:e6 > > [Link] > Name=dmz0 > > NamePolicy= is not set, so Name= takes effect.
*** Bug 47228 has been marked as a duplicate of this bug. ***
udevadm(8) also offers debug facilities for the *.link interpreter. See "Example 4. Debugging NamePolicy= assignments" in the same man page.
(In reply to Arseny Maslennikov from comment #0) > Сейчас "persistent-net"-машинерия генерирует один файл на машину и при > необходимости изменить список отображений hwaddr->name патчит общий файл с > правилами. И это хорошо, как я уже написал в bug 47228. Не надо ломать persistent-net.rules. Если кому-то нужны link-файлы, надо сделать отдельный пакет. и с конфликтом на этот пакет наверное.
(In reply to Sergey Y. Afonin from comment #3) > (In reply to Arseny Maslennikov from comment #0) > > > Сейчас "persistent-net"-машинерия генерирует один файл на машину и при > > необходимости изменить список отображений hwaddr->name патчит общий файл с > > правилами. > > Если кому-то нужны link-файлы, надо сделать отдельный > пакет. и с конфликтом на этот пакет наверное. Да, конечно, это будет другой пакет. Более того, ему бы следовало уметь доставать информацию из правил от вашего генератора.