ALT Linux sysadmins discussion
 help / color / mirror / Atom feed
From: Leonid Krivoshein <klark.devel@gmail.com>
To: ALT Linux sysadmins' discussion <sysadmins@lists.altlinux.org>
Subject: Re: [Sysadmins] Загрузка ALT Linux Rescue по PXE
Date: Thu, 19 Apr 2018 01:23:55 +0300
Message-ID: <9f8b9fe4-77ec-1cac-5114-e2ed90dabb81@gmail.com> (raw)
In-Reply-To: <20180409134142.64c01d7d@sysadmin.office.main.elserv.ru>

[-- 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

  parent reply	other threads:[~2018-04-18 22:23 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-04-09 10:41 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 [this message]
2018-04-19  9:13   ` Konstantin Lepikhov
2018-04-19 13:05     ` Michael Shigorin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=9f8b9fe4-77ec-1cac-5114-e2ed90dabb81@gmail.com \
    --to=klark.devel@gmail.com \
    --cc=sysadmins@lists.altlinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

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