Introduction:
Early-Userspace is the term used to describe the intramfs capability of kernel 2.6. Kernel 2.6 has the ability to mount a ram filesystem populated by a special initrd image or an image compiled into the kernel.
IDMS Linux makes use of a default compiled in image to locate the root filesystem, mounts it and pass control over to init. By default if the root filesystem cannot be mounted, IDMS Linux will drop to an emergency console.
You can customize this image to perform emergency operations, initialize various things such as a crypto root or to even install IDMS Linux.
Preboot Options
Preboot options are specified on the boot loader commandline. Below is a list of options available.
Drop to emergency preboot environment before loading hardware controller modules or doing any scans.
Request kernel to do software RAID autodetection.
Do not scan for LVM volumes.
Do not resume from previously hibernated state. DANGEROUS.
Probe usb controllers and usb devices during preboot.
Auto configuration of network and system. Here is an example, not all items are required.
device:eth0,module:e1000,ip:192.168.1.1,netmask:255.255.255.0,gw:192.168.1.254,nameserver:192.168.1.254,root:mypass
System Scripts
- /init-storage-controllers
Load the modules for the various storage controllers in the order of IDE => SCSI => SATA.
Auto-scan for software RAID devices.
Scan and activate LVM volumes.
If we were hibernated, resume.
Customization
The preboot image can be customized in various ways. The easiest is to append a cpio archive to the end of the preboot image.
There are a few files which are of interest that can be included in the image...
Exectued after the preboot image is extracted and after udev is started, but before the disk controllers are initialized.
Executed after the disk controllers are initialized.
Pass control from preboot over to this script after post-custom. exec is used.
Executed in emergency mode instead of /sbin/init
Plain text file containing passwords to be set in the pre-boot environment. The format is username:password
This file is removed straight after the passwords are set.
1 modules name per line. These are loaded during init when entering the pre-boot image.