Difference between revisions of "Initramfs zfs boot"

From copec
Jump to: navigation, search
Line 15: Line 15:
 
** /tmp
 
** /tmp
 
** /var/lock
 
** /var/lock
 
 
* Mount
 
* Mount
 
** /sys
 
** /sys
Line 22: Line 21:
 
** /dev/pts
 
** /dev/pts
 
** /run
 
** /run
 
 
* Create
 
* Create
 
** /run/initramfs
 
** /run/initramfs
 
+
* Setup bash exports
* Export
+
* 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

Revision as of 12:30, 24 January 2017

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