Boot Sequence initialization of Red Hat Linux 

1. BIOS(Basic Input/Output System)
->kernel initialization(KEY)
->init starts and enters desired run level(KEY) by executing

2. /etc/rc.d/rc.sysinit

3. /etc/rc.d/rc and /etc/rc.d/rc[0-6].d/ #(0-6 depends on run level what you set)

4. Virtual Consoles(not related here yet)

5. X display Manager(If you set run level as 5)

1. BIOS:

BIOs loads the lowest interface for device s and controls(hard disks and keyboards,etc)

BIOS run a POST(Power on self test) first, then read CMOS and find the boot information.

Hardware configuration information stored in CMOS(Complementary Metal Oxide Semiconductor, 
64 bytes), CMOs is stored in battery on motherboard.
(Remember use keys to flush the battery on motherboard(Hah)

Finally BIOS read the first physical sector of the chosen boot media on the system.
(The first 512 bytes of the hard disk normally)

2. Bootloader(GRUB)

GRUB is the boot loader LINUX used to boot. When GRUB starts up, 
we can see the counting down seconds and then it goes to LINUX. 
Like the windows XP start menu, we can set this and choose different operations system installed on our computer 
actually it is meaningless as we have multiple Giga RAMand VMware now)

I will use a followed section to describe how to configure GRUB after finish boot sequence

Bootloader runs as 2 stages.

1st stage small, resides in MBR or boot sector
(it will get the control from BIOS and direct to 2nd stage(446 bytes)

2nd stage- loaded from boot partition
( this partition is the one we can define during installation, 
normally is /boot(100M by default)
->load the kernel

Kernal is stored under /boot partition and do the following works

- Device Detection

- Device Driver initialization

- Mounts root filesystem read only

- Loads initial process(init)

3. init

init will read /etc/inittab (discuss later)

inittab defines run levels, it will load the defined run level and goes to rc[1-6].d, will research later.

When rc[1-6] is done, it will load rc.local

4 and xinetd service can run later here, it stores the programs that not used frequently, 
but when clients try to use this services, 
client will access xinetd first and xinetd will open these services for client.

There are some key configuration files are useful during initialization:





About Lei

I am an IT specialist with over 10 year experience - years on Automation, on-Premise or Azure.

I am happy to develop however never want be a full time developer. Only do what I have to do. If it has to be PowerShell,HTML, PHP, CSS, C#, VBS or JS, front end or backend, so be it, doesn't matter!

Spent years with Windows, SCCM, SharePoint, SQL and Exchange servers. For last several years, I have been actively working under On Premise > Azure environment.


Current Certificates:
    Microsoft® Certified-
  • -Enterprise Administrator
  • -Database Administrator
  • -SharePoint Administrator
  • -Administering and Deploying SCCM 2012
Red Hat Certified Technician
ITIL V3 Foundation - Practitioner

Working on Azure Certificates now and hopefully they can stop upgrading their questions one day! GIVE ME A BREAK!

Contact Lei

Name *
Email *
Comments *

Traffic since 10/08/2016

This week517
This month2590

Visitor Info

  • IP:
  • Browser: Unknown
  • Browser Version:
  • Operating System: Unknown

Who Is Online