Me again. After tweaking my Xsession for a stater, I am trying to build
a VM with s6-linux-init.
I am starting from Alpine Linux, because I am not into recompiling Linux
and all tools from scratch (well, not yet) and this distro already
provides binaries for all skarnet tools. Like many distro, they use an
initramfs, because most of the drivers (including sd-mod, scsi and ext*)
are built as modules.
I have found how to customize the initramfs. Now I am facing a choice:
what should I put in the initramfs ?
1) put s6-linux-init phase 1 into the initramfs, use it at /init, then
use an embedded /etc/rc.init to load modules, mount / and exec into the
root's /etc/rc.init. The advantage would be a full s6 boot process. One
drawback is that I have to put all execline and s6 tools (but s6-rc) in
the initramfs. Another one is that the phase 1 of s6-linux-init is not
very verbose and does not have any emergency fallback.
2) have a very small init script to load the modules, mount the
filesystems (/dev, /proc, /sys, /), and finally pivot-chroot into
s6-linux-init phase 1. This would be less elegent but it might be easier
to set up.
Any idea on this ?
I know the right way would be to recompile linux with the right modules
to boot directly into s6-linux-init phase 1 from the root partition.
- s6-linux-init, alpine linux, and initramfs Guillaume Perréal