ALT Linux sysadmins discussion
 help / color / mirror / Atom feed
* [Sysadmins] Загрузка ALT Linux Rescue по PXE
@ 2018-04-09 10:41 Alex Moskalenko
  2018-04-10  9:15 ` Konstantin Lepikhov
  2018-04-18 22:23 ` Leonid Krivoshein
  0 siblings, 2 replies; 17+ messages in thread
From: Alex Moskalenko @ 2018-04-09 10:41 UTC (permalink / raw)
  To: ALT Linux sysadmins' discussion

Здравствуйте!

Подскажите пожалуйста, как правильно грузить Rescue по PXE?

На текущий момент положил vmlinuz и full.cz (с добавленными модулями
для поддержки сетевых карт) на tftp-сервер, образ rescue - на
ftp-сервер, прописал в pxelinux.cfg соответствующие параметры
(fastboot live
automatic=method:ftp,network:dhcp,server:192.168.1.1,directory:/rescue/32
ramdisk_size=450000 stagename=rescue showopts). Начинается загрузка,
которая останавливается на сообщении "No network device found". Переход
на вторую консоль и выполнение там udevadm trigger --action=add; udevadm
settle подгружает модуль для сетевой карты, после чего можно продолжить
загрузку (rescue скачивается с ftp и далее все загружается обычным
образом).

Никак не могу понять, каким образом заставить
udev/propagator/кто-этим-должен-заниматься загружать модули для сетевой
карты автоматически.

Как правильно организовать загрузку?


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [Sysadmins] Загрузка ALT Linux Rescue по PXE
  2018-04-09 10:41 [Sysadmins] Загрузка ALT Linux Rescue по PXE Alex Moskalenko
@ 2018-04-10  9:15 ` Konstantin Lepikhov
  2018-04-10  9:31   ` Alex Moskalenko
  2018-04-18 22:23 ` Leonid Krivoshein
  1 sibling, 1 reply; 17+ messages in thread
From: Konstantin Lepikhov @ 2018-04-10  9:15 UTC (permalink / raw)
  To: sysadmins

Hi Alex!

On 04/09/2018, at 01:41:42 PM you wrote:

> Здравствуйте!
> 
> Подскажите пожалуйста, как правильно грузить Rescue по PXE?
> 
> На текущий момент положил vmlinuz и full.cz (с добавленными модулями
> для поддержки сетевых карт) на tftp-сервер, образ rescue - на
> ftp-сервер, прописал в pxelinux.cfg соответствующие параметры
> (fastboot live
> automatic=method:ftp,network:dhcp,server:192.168.1.1,directory:/rescue/32
> ramdisk_size=450000 stagename=rescue showopts). Начинается загрузка,
> которая останавливается на сообщении "No network device found". Переход
> на вторую консоль и выполнение там udevadm trigger --action=add; udevadm
> settle подгружает модуль для сетевой карты, после чего можно продолжить
> загрузку (rescue скачивается с ftp и далее все загружается обычным
> образом).
> 
> Никак не могу понять, каким образом заставить
> udev/propagator/кто-этим-должен-заниматься загружать модули для сетевой
> карты автоматически.
Насколько я помню, propagator все делает сам, и если имя сетевого
интерфейса не совпадает с ожидаемым, то он выкидывает эту ошибку.
Посмотрите отладочную консоль, там должно быть все написано что ему не
нравится.

-- 
WBR et al.


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [Sysadmins] Загрузка ALT Linux Rescue по PXE
  2018-04-10  9:15 ` Konstantin Lepikhov
@ 2018-04-10  9:31   ` Alex Moskalenko
  2018-04-10 12:29     ` Konstantin Lepikhov
  0 siblings, 1 reply; 17+ messages in thread
From: Alex Moskalenko @ 2018-04-10  9:31 UTC (permalink / raw)
  To: sysadmins

В Tue, 10 Apr 2018 11:15:13 +0200
Konstantin Lepikhov <lakostis@unsafe.ru> пишет:

> > На текущий момент положил vmlinuz и full.cz (с добавленными модулями
> > для поддержки сетевых карт) на tftp-сервер, образ rescue - на
> > ftp-сервер, прописал в pxelinux.cfg соответствующие параметры
> > (fastboot live
> > automatic=method:ftp,network:dhcp,server:192.168.1.1,directory:/rescue/32
> > ramdisk_size=450000 stagename=rescue showopts). Начинается загрузка,
> > которая останавливается на сообщении "No network device found".
> > Переход на вторую консоль и выполнение там udevadm trigger
> > --action=add; udevadm settle подгружает модуль для сетевой карты,
> > после чего можно продолжить загрузку (rescue скачивается с ftp и
> > далее все загружается обычным образом).
> > 
> > Никак не могу понять, каким образом заставить
> > udev/propagator/кто-этим-должен-заниматься загружать модули для
> > сетевой карты автоматически.  
> Насколько я помню, propagator все делает сам, и если имя сетевого
> интерфейса не совпадает с ожидаемым, то он выкидывает эту ошибку.
> Посмотрите отладочную консоль, там должно быть все написано что ему не
> нравится.
> 

На 3й консоли есть следующее:
* welcome to the ALT Linux install(alt-stage1, built ...)
* opening /proc/cmdline...
*   initrd=..... (строка APPEND из pxelinux)
* AUTOMATIC MODE: got 4 params
*      got 8 args
* spawning a shell
* unsetting automatic

Похоже, все ему нравится, просто модуля для сетевой карты никто не
загружает. Интерфейс только lo. lsmod - пусто. После ручной загрузки
модуля (через вторую консоль с шеллом) и нажатия Ok в propagator у него
все получается - поднимается интерфейс, получается IP, загружается по
FTP образ и т.д.

Никак не могу понять, как и кого попросить грузить модуль для сетевой
карты. Все нужное в initrd есть - модули, udev.


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [Sysadmins] Загрузка ALT Linux Rescue по PXE
  2018-04-10  9:31   ` Alex Moskalenko
@ 2018-04-10 12:29     ` Konstantin Lepikhov
  2018-04-10 12:44       ` Alex Moskalenko
  0 siblings, 1 reply; 17+ messages in thread
From: Konstantin Lepikhov @ 2018-04-10 12:29 UTC (permalink / raw)
  To: ALT Linux sysadmins' discussion

Hi Alex!

On 04/10/2018, at 12:31:16 PM you wrote:

> > > На текущий момент положил vmlinuz и full.cz (с добавленными модулями
> > > для поддержки сетевых карт) на tftp-сервер, образ rescue - на
> > > ftp-сервер, прописал в pxelinux.cfg соответствующие параметры
> > > (fastboot live
> > > automatic=method:ftp,network:dhcp,server:192.168.1.1,directory:/rescue/32
> > > ramdisk_size=450000 stagename=rescue showopts). Начинается загрузка,
> > > которая останавливается на сообщении "No network device found".
> > > Переход на вторую консоль и выполнение там udevadm trigger
> > > --action=add; udevadm settle подгружает модуль для сетевой карты,
> > > после чего можно продолжить загрузку (rescue скачивается с ftp и
> > > далее все загружается обычным образом).
> > > 
> > > Никак не могу понять, каким образом заставить
> > > udev/propagator/кто-этим-должен-заниматься загружать модули для
> > > сетевой карты автоматически.  
> > Насколько я помню, propagator все делает сам, и если имя сетевого
> > интерфейса не совпадает с ожидаемым, то он выкидывает эту ошибку.
> > Посмотрите отладочную консоль, там должно быть все написано что ему не
> > нравится.
> > 
> 
> На 3й консоли есть следующее:
> * welcome to the ALT Linux install(alt-stage1, built ...)
> * opening /proc/cmdline...
> *   initrd=..... (строка APPEND из pxelinux)
> * AUTOMATIC MODE: got 4 params
> *      got 8 args
> * spawning a shell
> * unsetting automatic
> 
> Похоже, все ему нравится, просто модуля для сетевой карты никто не
> загружает. Интерфейс только lo. lsmod - пусто. После ручной загрузки
> модуля (через вторую консоль с шеллом) и нажатия Ok в propagator у него
> все получается - поднимается интерфейс, получается IP, загружается по
> FTP образ и т.д.
да, если по коду то все вываливается потому что в /sys/class/network пусто:

...
char ** get_net_devices(void)
{
	DIR * sys_net;
	char * tmp[50];
	struct dirent * ent;
	int i = 0;
	
	sys_net = opendir("/sys/class/net");
	if (sys_net == NULL) return(strdup("\0"));

	while ( ent = readdir(sys_net)){
		if( !strcmp("lo", ent->d_name))continue;
		if (net_device_available(ent->d_name)){
			tmp[i++] = strdup(ent->d_name);
		}
	}
	tmp[i++] = NULL;

	return memdup(tmp, sizeof(char *) * i);
}
#endif /* DISABLE_NETWORK */

> 
> Никак не могу понять, как и кого попросить грузить модуль для сетевой
> карты. Все нужное в initrd есть - модули, udev.
propagator запускает udev перед собственно поиском устройств, т.е. если
карта там не обнаружилась, то в dmesg должно быть что-то. Есть ли еще
сообщения на других консолях?

-- 
WBR et al.


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [Sysadmins] Загрузка ALT Linux Rescue по PXE
  2018-04-10 12:29     ` Konstantin Lepikhov
@ 2018-04-10 12:44       ` Alex Moskalenko
  2018-04-10 12:57         ` Konstantin Lepikhov
  0 siblings, 1 reply; 17+ messages in thread
From: Alex Moskalenko @ 2018-04-10 12:44 UTC (permalink / raw)
  To: sysadmins

В Tue, 10 Apr 2018 14:29:41 +0200
Konstantin Lepikhov <lakostis@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?...


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [Sysadmins] Загрузка ALT Linux Rescue по PXE
  2018-04-10 12:44       ` Alex Moskalenko
@ 2018-04-10 12:57         ` Konstantin Lepikhov
  2018-04-10 13:07           ` Alex Moskalenko
  0 siblings, 1 reply; 17+ messages in thread
From: Konstantin Lepikhov @ 2018-04-10 12:57 UTC (permalink / raw)
  To: ALT Linux sysadmins' discussion

Hi Alex!

On 04/10/2018, at 03:44:55 PM you wrote:

> В Tue, 10 Apr 2018 14:29:41 +0200
> Konstantin Lepikhov <lakostis@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@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@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.


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [Sysadmins] Загрузка ALT Linux Rescue по PXE
  2018-04-10 12:57         ` Konstantin Lepikhov
@ 2018-04-10 13:07           ` Alex Moskalenko
  2018-04-10 13:39             ` Konstantin Lepikhov
                               ` (3 more replies)
  0 siblings, 4 replies; 17+ messages in thread
From: Alex Moskalenko @ 2018-04-10 13:07 UTC (permalink / raw)
  To: sysadmins

В Tue, 10 Apr 2018 14:57:35 +0200
Konstantin Lepikhov <lakostis@unsafe.ru> пишет:

> Hi Alex!
> 
> On 04/10/2018, at 03:44:55 PM you wrote:
> 
> > В Tue, 10 Apr 2018 14:29:41 +0200
> > Konstantin Lepikhov <lakostis@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@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@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ти-летней давности,
> так что я никак не разработчик этой программы )
> 

Ну я тут точно не помогу, так как у меня познания по "внутренностям"
propagator'а просто отсутствуют. :) Разве что баг могу повесить.

Хотя терзают меня сомнения - неужели никто не пытался
установить/загрузить liveCD ALT Linux по сети? Ведь это должно
обязательно вылезти при установке! Может, все-таки что-то не так у меня?


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [Sysadmins] Загрузка ALT Linux Rescue по PXE
  2018-04-10 13:07           ` Alex Moskalenko
@ 2018-04-10 13:39             ` Konstantin Lepikhov
  2018-04-10 14:01             ` Konstantin Lepikhov
                               ` (2 subsequent siblings)
  3 siblings, 0 replies; 17+ messages in thread
From: Konstantin Lepikhov @ 2018-04-10 13:39 UTC (permalink / raw)
  To: ALT Linux sysadmins' discussion

Hi Alex!

On 04/10/2018, at 04:07:23 PM you wrote:

> > Хм, интересно:
> > 
> > [lakostis@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@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ти-летней давности,
> > так что я никак не разработчик этой программы )
> > 
> 
> Ну я тут точно не помогу, так как у меня познания по "внутренностям"
> propagator'а просто отсутствуют. :) Разве что баг могу повесить.
Лучше повесьте.

Поведение поменялось вот с этого коммита:

commit bab88d61a1149da063232ae536ea5300b98aed3e
Author: Anton V. Boyarshinov <boyarsh@>
Date:   Thu Feb 14 17:08:46 2013 +0400

    dynamic interafaces names list


> 
> Хотя терзают меня сомнения - неужели никто не пытался
> установить/загрузить liveCD ALT Linux по сети? Ведь это должно
> обязательно вылезти при установке! Может, все-таки что-то не так у меня?
Это ж altlinux которым никто не пользуется, так что не удивляйтесь, если
какой-то очевидный функционал либо сломан либо вообще отсутствует. Раньше
PXE у меня работал, но, повторюсь, это было лет 10 назад.

-- 
WBR et al.


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [Sysadmins] Загрузка ALT Linux Rescue по PXE
  2018-04-10 13:07           ` Alex Moskalenko
  2018-04-10 13:39             ` Konstantin Lepikhov
@ 2018-04-10 14:01             ` Konstantin Lepikhov
  2018-04-11  6:31               ` Alex Moskalenko
  2018-04-11 16:46             ` Michael A. Kangin
  2018-04-18 21:02             ` Michael Shigorin
  3 siblings, 1 reply; 17+ messages in thread
From: Konstantin Lepikhov @ 2018-04-10 14:01 UTC (permalink / raw)
  To: ALT Linux sysadmins' discussion

Hi Alex!

On 04/10/2018, at 04:07:23 PM you wrote:

> Хотя терзают меня сомнения - неужели никто не пытался
> установить/загрузить liveCD ALT Linux по сети? Ведь это должно
> обязательно вылезти при установке! Может, все-таки что-то не так у меня?
Подпишитесь на https://bugzilla.altlinux.org/show_bug.cgi?id=34347 и
запаситесь попкорном. Похоже, вы не одиноки с этой проблемой.

-- 
WBR et al.


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [Sysadmins] Загрузка ALT Linux Rescue по PXE
  2018-04-10 14:01             ` Konstantin Lepikhov
@ 2018-04-11  6:31               ` Alex Moskalenko
  0 siblings, 0 replies; 17+ messages in thread
From: Alex Moskalenko @ 2018-04-11  6:31 UTC (permalink / raw)
  To: sysadmins

В Tue, 10 Apr 2018 16:01:14 +0200
Konstantin Lepikhov <lakostis@unsafe.ru> пишет:

> Подпишитесь на https://bugzilla.altlinux.org/show_bug.cgi?id=34347 и
> запаситесь попкорном. Похоже, вы не одиноки с этой проблемой.
> 

Подписался и добавил ссылку на наше обсуждение. Спасибо!



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [Sysadmins] Загрузка ALT Linux Rescue по PXE
  2018-04-10 13:07           ` Alex Moskalenko
  2018-04-10 13:39             ` Konstantin Lepikhov
  2018-04-10 14:01             ` Konstantin Lepikhov
@ 2018-04-11 16:46             ` Michael A. Kangin
  2018-06-02 20:29               ` Michael A. Kangin
  2018-04-18 21:02             ` Michael Shigorin
  3 siblings, 1 reply; 17+ messages in thread
From: Michael A. Kangin @ 2018-04-11 16:46 UTC (permalink / raw)
  To: sysadmins

On 04/10/2018 03:07 PM, Alex Moskalenko wrote:

> Хотя терзают меня сомнения - неужели никто не пытался
> установить/загрузить liveCD ALT Linux по сети? Ведь это должно
> обязательно вылезти при установке! Может, все-таки что-то не так у меня?


Думаю, можно попробовать вот этой штукой загрузить:
https://www.altlinux.org/Colaboot

Взять с ISO образ squash, и сделать кастомный initrd, и образ(ы) с 
модулями, если ядро будет другой версии, чем на ISO.


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [Sysadmins] Загрузка ALT Linux Rescue по PXE
  2018-04-10 13:07           ` Alex Moskalenko
                               ` (2 preceding siblings ...)
  2018-04-11 16:46             ` Michael A. Kangin
@ 2018-04-18 21:02             ` Michael Shigorin
  2018-04-21  9:51               ` Leonid Krivoshein
  3 siblings, 1 reply; 17+ messages in thread
From: Michael Shigorin @ 2018-04-18 21:02 UTC (permalink / raw)
  To: sysadmins; +Cc: arseny, klark

On Tue, Apr 10, 2018 at 04:07:23PM +0300, Alex Moskalenko wrote:
> Хотя терзают меня сомнения - неужели никто не пытался
> установить/загрузить liveCD ALT Linux по сети?

Разумеется, пытались.

> Ведь это должно обязательно вылезти при установке!
> Может, все-таки что-то не так у меня?

Коллеги недавно тоже напоролись -- похоже на регрессию.
Разбираемся.  Повесить стоит, CC: klark@ и arseny@.

Спасибо вам обоим!

-- 
 ---- WBR, Michael Shigorin / http://altlinux.org
  ------ http://opennet.ru / http://anna-news.info


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [Sysadmins] Загрузка ALT Linux Rescue по PXE
  2018-04-09 10:41 [Sysadmins] Загрузка ALT Linux Rescue по PXE Alex Moskalenko
  2018-04-10  9:15 ` Konstantin Lepikhov
@ 2018-04-18 22:23 ` Leonid Krivoshein
  2018-04-19  9:13   ` Konstantin Lepikhov
  1 sibling, 1 reply; 17+ messages in thread
From: Leonid Krivoshein @ 2018-04-18 22:23 UTC (permalink / raw)
  To: ALT Linux sysadmins' discussion

[-- Attachment #1: Type: text/plain, Size: 1542 bytes --]

Добрый день!


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.


[-- Attachment #2: later.patch --]
[-- Type: text/x-patch, Size: 1892 bytes --]

commit a93ef33113400ee39437a02f184e6974348f6ca1
Author: Leonid Krivoshein <klark@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 <klark@altlinux.ru> 0.32-alt2
+- Change order to start propagator after udev and before loop.
+
 * Sun Jan 21 2018 Arseny Maslennikov <arseny@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

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [Sysadmins] Загрузка ALT Linux Rescue по PXE
  2018-04-18 22:23 ` Leonid Krivoshein
@ 2018-04-19  9:13   ` Konstantin Lepikhov
  2018-04-19 13:05     ` Michael Shigorin
  0 siblings, 1 reply; 17+ messages in thread
From: Konstantin Lepikhov @ 2018-04-19  9:13 UTC (permalink / raw)
  To: ALT Linux sysadmins' discussion

Hi Leonid!

On 04/19/2018, at 01:23:55 AM you wrote:

> Добрый день!
> 
> 
> 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@: спасибо за звоночек! :)
> 
> 
Так у вас жеж там полноценная система с glibc и udev, что мешает
слинковать propogator с libudev и получать события от udev напрямую? Без
костылей и хаков.

-- 
WBR et al.


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [Sysadmins] Загрузка ALT Linux Rescue по PXE
  2018-04-19  9:13   ` Konstantin Lepikhov
@ 2018-04-19 13:05     ` Michael Shigorin
  0 siblings, 0 replies; 17+ messages in thread
From: Michael Shigorin @ 2018-04-19 13:05 UTC (permalink / raw)
  To: sysadmins

On Thu, Apr 19, 2018 at 11:13:24AM +0200, Konstantin Lepikhov wrote:
> Так у вас жеж там полноценная система с glibc и udev,
> что мешает слинковать propogator с libudev

Желание применить rm вместо ld...

-- 
 ---- WBR, Michael Shigorin / http://altlinux.org
  ------ http://opennet.ru / http://anna-news.info


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [Sysadmins] Загрузка ALT Linux Rescue по PXE
  2018-04-18 21:02             ` Michael Shigorin
@ 2018-04-21  9:51               ` Leonid Krivoshein
  0 siblings, 0 replies; 17+ messages in thread
From: Leonid Krivoshein @ 2018-04-21  9:51 UTC (permalink / raw)
  To: Michael Shigorin, sysadmins; +Cc: arseny


19.04.2018 00:02, Michael Shigorin пишет:
> On Tue, Apr 10, 2018 at 04:07:23PM +0300, Alex Moskalenko wrote:
>> Ведь это должно обязательно вылезти при установке!
>> Может, все-таки что-то не так у меня?
> Коллеги недавно тоже напоролись -- похоже на регрессию.
> Разбираемся.  Повесить стоит, CC: klark@ и arseny@.


Разобрался, пофиксил. Протестировал пока только в виртуалке на p8.
Попробуйте собрать образ с пропагатором из task #205072.

P.S.: а с git.alt и webery не было никаких изменений? Как будто 
интерфейс поменялся...


-- 
Best regards,
Leonid Krivoshein.



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [Sysadmins] Загрузка ALT Linux Rescue по PXE
  2018-04-11 16:46             ` Michael A. Kangin
@ 2018-06-02 20:29               ` Michael A. Kangin
  0 siblings, 0 replies; 17+ messages in thread
From: Michael A. Kangin @ 2018-06-02 20:29 UTC (permalink / raw)
  To: sysadmins

On 04/11/2018 06:46 PM, Michael A. Kangin wrote:

>> Хотя терзают меня сомнения - неужели никто не пытался
>> установить/загрузить liveCD ALT Linux по сети? Ведь это должно
>> обязательно вылезти при установке! Может, все-таки что-то не так у меня?
>
>
> Думаю, можно попробовать вот этой штукой загрузить:
> https://www.altlinux.org/Colaboot
>
> Взять с ISO образ squash, и сделать кастомный initrd, и образ(ы) с
> модулями, если ядро будет другой версии, чем на ISO.

Попробовал в продакшене, работает замечательно. Взял с ISO squash, 
пережал с выкинутыми модулями (-43мб), ну и подгружается при загрузке 
хоста по http.

Примерно так же запинал и ливку от Центоси7 с гномом. Только они там 
чего-то перемудрили, в скваш кладут аж упакованный ext3-образ зачемто. 
Домонтировался до корневой фс, перепаковал всё в скваш с выкинутыми 
модулями. И точно так же прекрасно грузится по сети и работает, хотя 
памяти отжирает уже ощутимо, 1.2 гб где-то заняты после окончания загрузки.


^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2018-06-02 20:29 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-04-09 10:41 [Sysadmins] Загрузка ALT Linux Rescue по PXE Alex Moskalenko
2018-04-10  9:15 ` Konstantin Lepikhov
2018-04-10  9:31   ` Alex Moskalenko
2018-04-10 12:29     ` Konstantin Lepikhov
2018-04-10 12:44       ` Alex Moskalenko
2018-04-10 12:57         ` Konstantin Lepikhov
2018-04-10 13:07           ` Alex Moskalenko
2018-04-10 13:39             ` Konstantin Lepikhov
2018-04-10 14:01             ` Konstantin Lepikhov
2018-04-11  6:31               ` Alex Moskalenko
2018-04-11 16:46             ` Michael A. Kangin
2018-06-02 20:29               ` Michael A. Kangin
2018-04-18 21:02             ` Michael Shigorin
2018-04-21  9:51               ` Leonid Krivoshein
2018-04-18 22:23 ` Leonid Krivoshein
2018-04-19  9:13   ` Konstantin Lepikhov
2018-04-19 13:05     ` Michael Shigorin

ALT Linux sysadmins discussion

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/sysadmins/0 sysadmins/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 sysadmins sysadmins/ http://lore.altlinux.org/sysadmins \
		sysadmins@lists.altlinux.org sysadmins@lists.altlinux.ru sysadmins@lists.altlinux.com
	public-inbox-index sysadmins

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.sysadmins


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git