[Sysadmins] Загрузка ALT Linux Rescue по PXE
Konstantin Lepikhov
lakostis на unsafe.ru
Вт Апр 10 15:57:35 MSK 2018
Hi Alex!
On 04/10/2018, at 03:44:55 PM you wrote:
> В Tue, 10 Apr 2018 14:29:41 +0200
> Konstantin Lepikhov <lakostis at unsafe.ru> пишет:
>
> > propagator запускает udev перед собственно поиском устройств, т.е.
> > если карта там не обнаружилась, то в dmesg должно быть что-то. Есть
> > ли еще сообщения на других консолях?
> >
>
> Сразу после сообщения "No network device found" переключаюсь на вторую
> консоль (оболочка). lsmod - пусто. ls /sys/class/net - lo. udevd
> --resolve-names=never в процессах присутствует. На 4й консоли - обычный
> лог загрузки ядра, никаких попыток загрузить какие-либо модули не
> наблюдается.
>
> Если на второй консоли в шелле выполнить udevadm trigger --action=add,
> то загружаются модули для найденных устройств, в том числе и сетевой
> карты, появляется /sys/class/net/eth0 и propagator продолжает свою
> работу (поднимает eth0, получает ip, загружает stage2), правда, в
> ручном режиме.
>
> Может, нужно куда-нибудь вставить этот самый udevadm trigger
> --action=add?...
Хм, интересно:
[lakostis at lks propagator]$ git grep udevtrigger_add
cdrom.c:extern char *udevtrigger_add[];
cdrom.c: spawn(udevtrigger_add);
disk.c:extern char *udevtrigger_add[];
disk.c: spawn(udevtrigger_add);
init.c:char *udevtrigger_add[] = {"/sbin/udevadm", "udevadm", "trigger", "--action=add", NULL};
[lakostis at lks propagator]$ git grep udevtrigger
init.c:char *udevtrigger[] = {"/sbin/udevadm", "udevadm", "trigger", NULL};
init.c: if (waitpid(spawn(udevtrigger), &wait_status, 0) < 0 ||
init.c: warn("udevtrigger");
т.е. propagator при загрузке дергает udevadm trigger на ранней стадии,
далее trigger --action=add дергается только для методов disk и cdrom.
Наверное, это баг, и стоит добавить udevtrigger_add для метода network?
PS все мои познания propagator основаны опыте 10ти-летней давности, так
что я никак не разработчик этой программы )
--
WBR et al.
Подробная информация о списке рассылки Sysadmins