Bug 47234

Summary: Перевести persistent-net.rules на *.link-файлы
Product: Sisyphus Reporter: Arseny Maslennikov <arseny>
Component: udev-rule-generatorAssignee: Sergey Y. Afonin <asy>
Status: CLOSED NOTABUG QA Contact: qa-sisyphus
Severity: normal    
Priority: P5 CC: antohami, asy, glebfm, iv, ldv
Version: unstable   
Hardware: all   
OS: Linux   
Bug Depends on:    
Bug Blocks: 46625    

Description Arseny Maslennikov 2023-08-14 14:21:44 MSK
Сейчас "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.
Comment 1 Arseny Maslennikov 2023-08-14 14:22:02 MSK
*** Bug 47228 has been marked as a duplicate of this bug. ***
Comment 2 Arseny Maslennikov 2023-08-14 14:29:42 MSK
udevadm(8) also offers debug facilities for the *.link interpreter.
See "Example 4. Debugging NamePolicy= assignments" in the same man page.
Comment 3 Sergey Y. Afonin 2023-08-24 12:06:17 MSK
(In reply to Arseny Maslennikov from comment #0)

> Сейчас "persistent-net"-машинерия генерирует один файл на машину и при
> необходимости изменить список отображений hwaddr->name патчит общий файл с
> правилами.

И это хорошо, как я уже написал в bug 47228. Не надо ломать persistent-net.rules. Если кому-то нужны link-файлы, надо сделать отдельный пакет. и с конфликтом на этот пакет наверное.
Comment 4 Arseny Maslennikov 2023-08-24 12:52:44 MSK
(In reply to Sergey Y. Afonin from comment #3)
> (In reply to Arseny Maslennikov from comment #0)
> 
> > Сейчас "persistent-net"-машинерия генерирует один файл на машину и при
> > необходимости изменить список отображений hwaddr->name патчит общий файл с
> > правилами.
> 
> Если кому-то нужны link-файлы, надо сделать отдельный
> пакет. и с конфликтом на этот пакет наверное.

Да, конечно, это будет другой пакет. Более того, ему бы следовало уметь доставать информацию из правил от вашего генератора.