Skip to content

initramfs

  • tinycorelinux is run entirely in the initramfs (no switch_root)

  • kiss is also run in initramfs and extracts .tar.xz packages (no switch_root)

  • tinyramfs supports hardware detection at boot if all necessary modules are included; kiss-live project

  • initramfs is newer compared to initrd

  • The file /init must exist in the initramfs

  • All daemons started by the initramfs must be killed, as the kernel reserves PID 1 for the init system

  • pivot_root is older than switch_root and was used by the old initrd, while the latter is used by the newer initramfs

  • Some init systems require proc, sys and dev to be mounted before starting up with switch_root in init, in this case is better to use mount --move instead of cleaning up with umount before switch_root, otherwise it is better overall to use umount to boot in a clean state.

  • cryptsetup requires /run; not included in the iso

  • /mnt/root is the accepted mountpoint for the root filesystem

  • findfs from util-linux can be used to detect the label glaucus instead of using /dev/sr0 directly

  • No need for network or wireless drivers inside initramfs because we won’t live boot over network for now

  • When using find . -print0 the option -0 or --null should be used with cpio

  • modprobe resolved dependencies, unlike insmod

  • Without running depmod module dependencies won’t be loaded

  • blkid is better than findfs in terms of finding block devices; better output

  • Do we need the following modules: char/tpm, firewire, hid-generic and pcmcia?

Resources