Mail archive
alpine-devel

Re: [alpine-devel] Some questions about initramfs-init.

From: Magicloud Magiclouds <magicloud.magiclouds_at_gmail.com>
Date: Sun, 31 Mar 2019 18:44:38 +0800

And thinking about it, I am confused on why relocate_mount so many times.

There are three calls. 1. if apkovl contains fstab; 2. else if stage1
contains fstab; 3. else if packages install a fstab. But consider that
there is no umount call, and move mount only occurs before
switch_root. I cannot see the point of relocating them during stage1.

On Sun, Mar 31, 2019 at 6:16 PM Magicloud Magiclouds
<magicloud.magiclouds_at_gmail.com> wrote:
>
> I think I get why overwriting $repofile, it is because of the
> relocate_mount. But if that, "nlplug_findfs -b" call seems non-sense.
>
> Also, where is $ovl_unmount defined?
>
> On Sat, Mar 30, 2019 at 2:45 AM Magicloud Magiclouds
> <magicloud.magiclouds_at_gmail.com> wrote:
> >
> > Thanks. I still do not get the arch part. Detail is after the question.
> >
> > On Sat, Mar 30, 2019 at 2:35 AM Natanael Copa <ncopa_at_alpinelinux.org> wrote:
> > >
> > > On Sat, 30 Mar 2019 02:17:09 +0800
> > > Magicloud Magiclouds <magicloud.magiclouds_at_gmail.com> wrote:
> > >
> > > > Hi,
> > > >
> > > > I'd like to propose a rewrite of the initrd `init` script. Because I
> > > > think it is quite mixed up of booting logic, and missing some
> > > > customization possibilities.
> > > >
> > > > But before that, I need to get some questions clear. In following
> > > > discussion, "stage 1" means the initrd system (before switch_root),
> > > > "stage 2" means the actual system end user uses (after switch_root).
> > > >
> > > > 1. Why there is a keymap setup? I cannot see the necessity of it
> > > > except for fallback/single shell.
> > >
> > > We have support for encrypted apkovls, for "disk less" installs. You
> > > may need to type the password to decrypt the configuration.
> > Ah, I forgot that requirement.
> > >
> > > > 2. Why networking is after nlplug-findfs? Can I bring up network (if
> > > > needed) before nlplug-findfs?
> > >
> > > nlplug-findfs also serves as coldplug, and enumerates all the current
> > > devices so all kernel modules gets loaded. Without this there is no
> > > guarantee that the network driver is automatically detected and loaded.
> > I see.
> > >
> > > > 3. Since nlplug-findfs already output a repofile, why there is a
> > > > find_boot_repositories soon after to overwrite repofile?
> > >
> > > I will have to consult the source code and git log. I don't remember.
> > Just FYI, from line 520, if there is no network requirement,
> > nlplug-findfs (in line 528) gets the option "-b $repofile". Then in
> > line 667, $repofile is overwrite by find_boot_repositories.
> > >
> > > > 4. Since apk works without /etc/apk/arch, why overwrite it with `apk
> > > > --print-arch`, instead of just removing it?
> > >
> > > Because it was an upgrade path from 32bit x86 to 64 bit diskless
> > > installs. You can simply copy an apkovl from 32 bit install to a 64 bit
> > > boot USB and the entire install is 64 bit after that. Without the
> > > --print-arch logic it would error because it wouldnt find the packages.
> > I do not think I followed.
> >
> > I can see the following case. Say my apkovl is 32bit, so
> > $sysroot/etc/apk/arch is x86 (I guess, I do not have a 32bit env to
> > check). So current logic overwrites it with x86_64, so following apk
> > bootstrap uses 64bit packages.
> >
> > But if just removing the 32bit arch file, would not apk in new boot
> > USB (which contains 64 bit system) using 64bit packages by default?
> > >
> > > > 5. The script contains two ways of using repofile. One is using it
> > > > directly as "--repositories-file", the other is joining its content
> > > > with "--repository". What is the difference?
> > >
> > > IIRC, --repositories-file will replace the
> > > default /etc/apk/repositories, while --repository will append the
> > > specified repo to whatever is listed in /etc/apk/repositories
> > I see.
> > >
> > >
> > >
> > > >
> > > > Thanks.
> > > >
> > >
> >
> >
> > --
> > 竹密岂妨流水过
> > 山高哪阻野云飞
> >
> > And for G+, please use magiclouds#gmail.com.
>
>
>
> --
> 竹密岂妨流水过
> 山高哪阻野云飞
>
> And for G+, please use magiclouds#gmail.com.



-- 
竹密岂妨流水过
山高哪阻野云飞
And for G+, please use magiclouds#gmail.com.
---
Unsubscribe:  alpine-devel+unsubscribe_at_lists.alpinelinux.org
Help:         alpine-devel+help_at_lists.alpinelinux.org
---
Received on Sun Mar 31 2019 - 18:44:38 UTC