1. BIOS loads first stage boot loader from the first sector of available disks (floppy, hard drive, cd-rom, etc.)
2. First stage boot loader then loads the second stage boot loader.
3. Second stage boot loader allows user to choose what kernel to boot.
4. Chosen kernel then booted and devices are initialized.
5. Kernel then executes init process.
6. Init starts services according to /etc/inittab:
- rc.sysinit - System initialization scripts
- Mounts /proc.
- Configures Kernel parameters (via sysctl)
- Configures system clock.
- Sets host name.
- Initialize USB and HID devices.
- Configure PnP.
- Determines module dependencies.
- Setup any RAID devices.
- Performs file system checks if needed.
- Mounts file systems.
- Starts user quotas.
- Enable process accounting.
- Starts swap.
- Initialize serial ports.
- Dump boot messages to /var/log/dmesg
rc - Configures services based on runlevel
rc.local - Configures any system specific information (deprecated).
1. Stop services that begin with "K" in /etc/rcX.d where X is the runlevel.
2. Start services that begin with "S" in /etc/rcX.d where X is the runlevel.
Other, runlevel specific services started according to /etc/inittab.
Viewing boot up information.
1. mingetty (except for runlevel 1).
2. xdm (runlevel 5).
Boot information displayed during boot up is stored in /var/log/dmesg.
Use dmesg command to view.
0 - Halt (Don't set default runlevel to this!)
1 - Single User mode
2 - Multi-user mode without NFS
3 - Full multi-user mode
4 - Unused
5 - X11 (with networking)
6 - Reboot (Don't set default runlevel to this!)