Detailed SoL 25 Boot
From SoL 25 Wiki
Following is a detailed description of the SoL 25 boot process, mainly which scripts are called in which runlevel, in which order and what they do, on a fresh SoL 25 installation, where init boots into runlevel 4.
All runlevel scripts are located in /etc/rc.d/bin, the configuration files that are used by some of these scripts are located in /etc/rc.d/cfg (read Basic System Configuration for more information).
Contents |
[edit] Pre-init
- Power-on
- BIOS POST
- GRUB
- Linux Kernel
[edit] init
The first thing init does is the system initialization (bootwait action) by calling runsol 9 ("runlevel 9"). By default, in this runlevel the only script that is called, is /etc/rc.d/bin/init-system.sh, which basically does the following:
- Mount the special filesystems for /proc, /sys, /dev/pts, /dev/shm, /proc/bus/usb
- Mount /dev (as tmpfs) and start udev
- Start loopback network
- Start non-spamming syslogd & klogd
- Basic hardware detection via PCI IDs
- Boot parameter magic
- If appropriate (Split Mode or Diskless Mode), mount /etc and /var
- Activate swap
- Set clock
- Remove lock files
- Setting default host- and domainname ("SoLxxxxxxxxxxxx.tld" where "xxxxxxxxxxxx" will be the MAC address of your eth0 networkdevice or empty if you don't have one)
- Stop syslogd (it will be restarted in the next runlevel)
- Clean up /etc/mtab
[edit] Runlevel 1 - Single User Mode
This is called directly after the system initialization, the scripts called here are:
- sol-hostname.sh - Sets the host- and domainname specified in hostname.cfg
- sol-syslogd.sh - Starts syslogd with the "real" configuration
- sol-kb.sh - Sets the keyboard layout specified in kb.cfg
[edit] Runlevel 2 - Basic System without Network
- sol-modules.sh - Explicitly loads modules that are specified in modules.cfg
[edit] Runlevel 3 - Basic System with Network
- sol-if.sh - Assigns IP addresses to the network interfaces like specified in if.cfg
- sol-route.sh - Sets up the route like specified route.cfg
- sol-ssh.sh - Starts up the SSH daemon
[edit] Runlevel 4 - Services Layer
This runlevel is empty in a default installation. Normally, you would want to add your desired services here, Runlevel System describes how to do this.
At this point, the system is up and ready for action.
