Make-initrd development discussion
 help / color / mirror / Atom feed
From: Alexey Gladkov <gladkov.alexey@gmail.com>
To: make-initrd@lists.altlinux.org
Subject: Re: [make-initrd] Как пользоваться фичей kickstarter?
Date: Wed, 6 Oct 2021 12:43:50 +0200
Message-ID: <20211006104350.6pfvmyfgdwdpwm3z@example.org> (raw)
In-Reply-To: <a8f2dac1-3d16-1cc5-9a41-2daf1b35c538@basealt.ru>

On Wed, Oct 06, 2021 at 05:03:56PM +0700, Антон Мидюков wrote:
> >> Алексей, я посмотрел README этой фичи. В ней есть то, что мне надо - возможность
> >> расширить корневой раздел на всё свободное пространство:
> >>
> >> * `--grow` - Tells the partition to grow to fill available space (if any).
> >>
> >> команда, получается:
> >>
> >> part / --grow
> >>
> >> Я правильно понимаю? Т.е. для моей задачи скрипт будет состоять из одной строки?
> > 
> > Если всё будет работать правильно, то да ))
> 
> Работает не так, как я было подумал :) Создаётся новый раздел из свободного пространства.

Сначала хотел возражать, но потом посмотрел в код )) Да, сейчас part
делает новый раздел, который может занять всё свободное пространство.

Нужно подумать как это лучше исправить. То ли я не так понял какое-то
сочетание опций part, то ли я правильно всё понял и нужно сделать
отдельную resize.

> Не хватает возможности использовать в качестве корня раздел, указанный в cmdline, как root=<такой-то>.
> Кажется логичным такое поведение:
> Если указан root=<такой-то>, то именно он должен считаться '/'. И операции совершаем над разделом, а не
> создаём новый.
> Если не указан root=<такой-то>, то поведение как сейчас.

А если захочется изменять размер не /, а /home ?

Составление fstab это несколько отдельная задача. Я согласен, что при его
составлении можно было бы учитывать root= в cmdline, если корень явно не
переопределён в сценарии.

> >> Но фича может очень много всего. Отсюда вопрос, можно ли использовать условия в скрипте?
> > 
> > Я много думал про это. С одной стороны это технически возможно так как
> > парсер написан на шелле. Но я подумал, что будет лучше иметь совместимость
> > с redhat kickstart [1].
> > 
> > Произвольный код вставлять в скрипт нельзя, но за счёт этого позволяется
> > до некоторой степени указывать команды в произвольном порядке.
> > 
> > Произвольный код можно указывать в специальных секциях %pre, %%post,
> > %onerror.
> > 
> >> Команды внешние?
> > 
> > В сценарии нет. В секциях да [2].
> > 
> 
> Ага, понятно. А как продолжить загрузку? Я так понимаю, что изначально рассчитано на то, что
> производим манипуляции и прекращаем загрузку, перезагружаем или выключаем компьютер.
> А мне нужно резайцнуть корневой раздел и продолжить загрузку.

Если kickstart был активирован через ksfile= в cmdline, то при загрузке
сервис kickstart поставит на паузу некоторые очереди (udev и
md-raid-member) и остановит текущий метод загрузки. После выполнения
сценария сервис снимет очереди с паузы и восстановит текущий метод.

Таким образом, если в /mnt/root будет что-то смонтировано (все команды
монтируют созданные разделы туда) и там будет init=, то должна начаться
загрузка с этого корня.

-- 
Rgrds, legion



  reply	other threads:[~2021-10-06 10:43 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-31  8:17 [make-initrd] plans Alexey Gladkov
2021-03-31  8:22 ` Антон Мидюков
2021-03-31  9:27   ` Alexey Gladkov
2021-03-31 10:00     ` Антон Мидюков
2021-03-31 10:32       ` Alexey Gladkov
2021-04-12 12:07 ` Alexey Gladkov
2021-04-14 11:53   ` Alexey Gladkov
2021-04-21 11:41     ` Alexey Gladkov
2021-05-15 19:06       ` Alexey Gladkov
2021-10-05 16:20   ` [make-initrd] Как пользоваться фичей kickstarter? Антон Мидюков
2021-10-05 18:54     ` Alexey Gladkov
2021-10-06 10:03       ` Антон Мидюков
2021-10-06 10:43         ` Alexey Gladkov [this message]
2021-05-21 11:25 ` [make-initrd] plans Alexey Gladkov

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=20211006104350.6pfvmyfgdwdpwm3z@example.org \
    --to=gladkov.alexey@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