From: Leonid Krivoshein <klark.devel@gmail.com>
To: make-initrd@lists.altlinux.org
Subject: Re: [make-initrd] Установка окружения в stage1 для передачи в stage2
Date: Sat, 3 Apr 2021 16:52:50 +0300
Message-ID: <662166a5-ed57-c782-cd07-a8dd97104a49@gmail.com> (raw)
In-Reply-To: <20210403133438.yzbiwm76ztbrbn3h@example.org>
03.04.2021 16:34, Alexey Gladkov пишет:
> On Sat, Apr 03, 2021 at 03:24:26PM +0300, Leonid Krivoshein wrote:
>>>> и обобщённой функции, типа add_to_env(), пока не предусмотрено?
>>> Пока потребителей не было я такого не писал. Не уверен нужна ли отдельная
>>> функция.
>> Не возражаешь, если добавлю тогда в pipeline_sh_functions?
> Я не против, но где ты хочешь эту функцию использовать ?
В стадиях pipeline -- вместо waitdev и после него.
После -- в liveboot, который заменит пропагатор и init-bottom из
make-initrd-propagator.
Если получится поделить liveboot на отдельные стадии pipeline, будет
очень здорово.
Но сначала хочу добиться того, чтобы перемычка между stage1 и stage2
заработала правильно.
Потом уже, по-возможности, вписывать это всё в идеологию pipeline.
Вместо waitdev -- в нескольких "сетевых методах" a.k.a. ftp, http, cifs
и nfs.
Первые два в нынешнем пропагаторе работают совсем иначе, нежели чем
getimage.
Они закачивают ISO-образ целиком сразу в /dev/ramN, независимо от lowmem.
Я пока не уверен, что такое поведение правильно оставлять.
Вторые два монтируют ISO-образ по сети и начисто отмонтируют всё на
выходе из stage1.
При этом в ряде случаев (altinst и live) остаётся смонтирован ISO образ
в /root/image,
последний слой (NFS/CIFS-каталог) отмонтируется "lazy" через umount -fl
/image.
В пропагаторе функция называется add_to_env().
Давай назовём её тут stage2_setenv() и это будет именно set/reset, а не add.
>> Дело в том, что propagator оставлял после себя определённое окружение,
>> которое как-то используется в stage2. Мне не нравится, что он передавал даже
>> пароли на FTP через него, я даже не смог пока найти клиента для PIGGYBACK=1
>> -- это используется, когда в stage1 был смонтирован каталог по NFS или CIFS,
>> и при выходе всё начисто отмонтируется. В основном же там экспортируется то,
>> что было передано через командную строку, типа метода, сервера, каталога,
>> итд. В общем, если уж делать совместимость со stage2, то сразу правильно
>> надо её реализовать.
> Это не моё дело, но я бы посоветовал вам не реализовывать сразу весь
> функционал propagator. Реализуйте сначала то, чем пользуетесь.
Согласен, я начал с локальной загрузки a.k.a "cdrom" и "disk", то бишь
liveboot (следом за wiatdev).
Надеюсь за сегодня-завтра сделать и до-отладить в первом приближении.
Кстати, захотелось стадию pipeline: debug -- выводим результаты
предыдущих шагов и вызываем rdshell.
--
Best regards,
Leonid Krivoshein.
prev parent reply other threads:[~2021-04-03 13:52 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-04-03 11:05 Leonid Krivoshein
2021-04-03 11:48 ` Alexey Gladkov
2021-04-03 12:24 ` Leonid Krivoshein
2021-04-03 13:34 ` Alexey Gladkov
2021-04-03 13:52 ` Leonid Krivoshein [this message]
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=662166a5-ed57-c782-cd07-a8dd97104a49@gmail.com \
--to=klark.devel@gmail.com \
--cc=make-initrd@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
Make-initrd development discussion
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/make-initrd/0 make-initrd/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 make-initrd make-initrd/ http://lore.altlinux.org/make-initrd \
make-initrd@lists.altlinux.org make-initrd@lists.altlinux.ru make-initrd@lists.altlinux.com
public-inbox-index make-initrd
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.make-initrd
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git