Initramfs zfs boot

From copec
Revision as of 12:30, 24 January 2017 by Copec (Talk | contribs)

Jump to: navigation, search

Overview

Both Debian and Ubuntu fail to boot when there is an arbitrarily more complex zpool than a single vdev that contains the bootfs.

Notes on Boot Process

  • The linux kernel is initially bootstrapped.
  • The compiled-in initramfs is mounted and executed.
    • It mounts the external initramfs; Deletes everything under its own initramfs; Executes the external initramfs /init

(External) initramfs init

  • Create
    • /dev
    • /root
    • /sys
    • /proc
    • /tmp
    • /var/lock
  • Mount
    • /sys
    • /proc
    • /dev
    • /dev/pts
    • /run
  • Create
    • /run/initramfs
  • Setup bash exports
  • Setup hostname
  • Source
    • /conf/initramfs.conf
    • /conf/conf.d/*
    • /scripts/functions
  • Parse command line options
    • init root rootflags rootfstype rootdelay resumedelay loop loopflags loopfstype crytopts nfsroot netboot ip ip6 boot ubi.mtd resume resume_offset noresume drop_capabilities panic quiet ro rw debug break blacklist netconsole BOOTIF hwaddr fastboot forcefsck fsckfix fsckmode fsck.repair recovery