Добрый день!
09.04.2018 13:41, Alex Moskalenko пишет:
Никак не могу понять, каким образом заставить udev/propagator/кто-этим-должен-заниматься загружать модули для сетевой карты автоматически.
Сегодня попробовал такой грязный хак (во вложении), но он не помог, потому что в нашу прошивку похоже вообще не попадает нужных модулей. Пропагатор подменяет своим интеллектом интеллект make-initrd, делая это на самой ранней стадии, становясь в initramfs единственным "главным управляющим". Идея моего патча в том, чтобы сдвинуть пропагатор как-то на попозже -- после хуков udev но до цикла ожидания появления корня. Не уверен, что это кому-то поможет, но вдруг?..
Константин Лепихов писал:
т.е. propagator при загрузке дергает udevadm trigger на ранней стадии, далее trigger --action=add дергается только для методов disk и cdrom. Наверное, это баг, и стоит добавить udevtrigger_add для метода network?
Поскольку не первый день над этой темой работаю, могу точно сказать точно, что происходит. Пропагатор начинает работать действительно на очень ранней стадии, когда обнаружение устройств ещё в самом разгаре. Я тоже пытаюсь заменить его скриптами и выходит, что нужно либо событийно-ориентированный подход, который уже есть в make-initrd v0.8, либо хотя бы простой цикл ожидания или задержка. У меня первое обращение к /sys/class/net/ тоже показывает только lo, и лишь на втором круге после секундной задержки появляется нужный интерфейс.
2 mike@: спасибо за звоночек! :) -- Best regards, Leonid Krivoshein.
commit a93ef33113400ee39437a02f184e6974348f6ca1 Author: Leonid Krivoshein <kl...@altlinux.org> Date: Thu Apr 19 00:54:07 2018 +0300 - Change order to start propagator after udev and before loop. diff --git a/make-initrd-propagator.spec b/make-initrd-propagator.spec index 60e6ee4..c5746e7 100644 --- a/make-initrd-propagator.spec +++ b/make-initrd-propagator.spec @@ -1,6 +1,6 @@ Name: make-initrd-propagator Version: 0.32 -Release: alt1 +Release: alt2 Summary: Put propagator into make-initrd generated image @@ -39,6 +39,9 @@ mkdir -p %buildroot%_datadir/make-initrd/features/propagator/data/image %_datadir/make-initrd/features/propagator %changelog +* Thu Apr 19 2018 Leonid Krivoshein <kl...@altlinux.ru> 0.32-alt2 +- Change order to start propagator after udev and before loop. + * Sun Jan 21 2018 Arseny Maslennikov <ars...@altlinux.org> 0.32-alt1 - netboot: Allowed use of different overlay storage locations. - netboot: Forbade mounting overlays with unspecified profile. diff --git a/propagator/data/scripts/pre/prepare/000-propagator b/propagator/data/scripts/pre/prepare/000-propagator deleted file mode 100755 index fabe5b8..0000000 --- a/propagator/data/scripts/pre/prepare/000-propagator +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/sh -efu - -readonly PROPAGATOR="/usr/sbin/propagator" -readonly UDEVADM="/sbin/udevadm" - -if [ -x "$PROPAGATOR" ]; then - if [ -x "$UDEVADM" ]; then - "$UDEVADM" trigger --action=add - "$UDEVADM" settle - fi - exec "$PROPAGATOR" -fi diff --git a/propagator/data/scripts/pre/prepare/060-propagator b/propagator/data/scripts/pre/prepare/060-propagator new file mode 100755 index 0000000..494c9d0 --- /dev/null +++ b/propagator/data/scripts/pre/prepare/060-propagator @@ -0,0 +1,7 @@ +#!/bin/sh -efu + +readonly PROPAGATOR="/usr/sbin/propagator" + +if [ -x "$PROPAGATOR" ]; then + exec "$PROPAGATOR" +fi
_______________________________________________ Sysadmins mailing list Sysadmins@lists.altlinux.org https://lists.altlinux.org/mailman/listinfo/sysadmins