[make-initrd] Добавить udev правило в initrd через initrd.mk

Антон Мидюков antohami at basealt.ru
Thu Sep 23 17:20:44 MSK 2021


23.09.2021 21:05, Alexey Gladkov пишет:
> On Thu, Sep 23, 2021 at 08:37:08PM +0700, Антон Мидюков wrote:
>> Здравствуйте
>>
>> Подскажите, что нужно прописать в initrd.mk, чтобы добавить udev правило в initrd?
>> Хочу ради эксперимента добавить /lib/udev/rules.d/80-net-setup-link.rules.
> 
> Это можно сделать двумя способами. Либо с помощью фичи add-udev-rules,
> которая активна по умолчанию:
> 
> PUT_UDEV_RULES += *-net-setup-link.rules
> 

Спасибо!

> либо просто:
> 
> PUT_FILES += /lib/udev/rules.d/80-net-setup-link.rules
> 
>> Кажется, именно оно отвечает за то, что сетевые интерфейсы переименовываются в
>> в enp0s8 подобные названия.
> 
> Это не оно.
> 
>> Обнаружил, что сетевой интерфейс включенный в initrd остаётся с именем eth0 при сетевой
>> установке. Что приводит к тому, что в инсталяторе настраиваем eth0, а в установленной системе
>> имеем его с именем enp0s8 подобным без конфигурации. Так что к установленной системе по сети после установки уже
>> можно и не подключиться (сетевой интерфейс подключен один).
> 
> Переименовывает systemd или что-то около его. Насколько я помню на это
> влияет присутствие dmidecode.
> 
> Это не моё дело, но инсталлер неправ, когда использует имена без
> последующей привязки имени к mac или businfo>> Соответственно, появилась мысль, что нужно отработать в initrd udev-правило переименования интерфейса.
> 
> initrd как раз ничего не переименовывает. Имя eth* каноническое.
> 

Это я знаю. Но проблема в том, что уже поднятый интерфейс не переименовывается в stage2.
Отсюда мысль, что нужно переименовать его ещё в initrd до его поднятия.


-- 
С уважением, Антон Мидюков <antohami at basealt.ru>


More information about the Make-initrd mailing list