In this post, I will guide you booting process in linux RHEL 7, it is very important to know the linux booting process to troubleshoot and fix boot issues. Redhat 7 replaced the init process (/sbin/init) with systemd (/usr/lib/systemd/systemd), systemd provides considerably more control compared to the init process does, although still supporting existing init scripts.
Booting Process in Linux RHEL 7
Linux boot process step by step:
1. BIOS (Perform POST)
2. MBR (loads GRUB2)
Loads the vmlinuz kernel image
Extract the contents of initramfs image
Loads necessary driver modules from initrd image
Systemd starts systems first process
Reads conf files from /etc/systemd
Reads file linked by /etc/systemd/system/default.target
Brings the system to the state defined by the system target
RHEL 7 booting process:
BIOS Full Form is Basic Input/Output System, It is a software which helps in booting process when the power is on, it executes the power on self test (POST) to identify, test and initialize system hardware components and its loads the MBR.
Master boot record (MBR)
It is the information in the first sector (512 bytes) of any Linux booting disk drive that identifies where and how an operating system is situated. Out of 512 bytes Boot-loader contains in 446 bytes, next 64 bytes contains the partition table for the disk. Last 2 bytes is called Magic number, which is used for error detection. MBR detects the bootable device and loads the GRUB2 boot loader into memory and transfers control over to it.
GRUB stands for GRand Unified Boot-loader. In Redhat 7, GRUB 2 is the default boot loader program, GRUB boot loader was used in previous RHEL versions. Configuration file for GRUB2 is located at /boot/grub2/grub.cfg. GRUB2 do a search for vmlinuz kernel image file in the /boot and loads the vmlinuz kernel image file into memory and extract the items in the initramfs image file into tmpfs (temporary file system).
initramfs: It will pre-load the block devices modules, for example: SCSI, IDE, so that the root file system, on which those modules normally reside, can then be accessed and mounted.
The initramfs is bound to the kernel and the kernel mounts this initramfs as part of a two-stage boot process.
Kernel starts the systemd process with a process ID of 1 (PID 1).
systemd is an init system used in boot process in linux RHEL 7 to bootstrap the user space and manage all processes subsequently. systemd brings the machine to the state based on the system target, performing system initialization tasks such as:
Initializing the Network
Setting the Host-name
Initializing the system hardware based on kernel boot arguments
Mounting the file systems, including virtual file systems such as the /proc file system
I hope this article provides you the information about, Booting Process in Linux RHEL 7. Thank you for studying!!. Be Social and share it in social media,if you really feel worth sharing it.