DevOps From Scratch: Entry #03
Source: Dev.to
After installing Ubuntu on my laptop for this Linux learning journey, I paused for a couple of weeks due to university work. I’m now continuing with the Linux Foundation’s DevOps from Scratch course, chapter 4, which covers how a Linux system starts up. Understanding the startup process is crucial: if a system fails to boot, you need to know which step went wrong to fix it.
The Startup Steps
The boot process follows a specific order, with each step preparing the system for the next.
1. BIOS and UEFI
When you power on the computer, the BIOS or UEFI firmware runs first. It performs a Power‑On Self Test (POST) to verify hardware components such as RAM and keyboard.
2. The Bootloader
After the hardware check, the firmware looks for a bootloader. On most Linux systems the default bootloader is GRUB. GRUB loads the Linux kernel into memory and hands control over to it.
Side note: If you forget your Ubuntu password, you can access the GRUB menu by hard‑resetting the machine a few times, then follow the online instructions to reset the password.
3. The Linux Kernel
The kernel is the core of the operating system. It initializes hardware, sets up memory management, and starts the very first user‑space process.
4. Init and systemd
The kernel starts a process called init; on modern distributions this is implemented by systemd. Systemd runs with PID 1 and is responsible for launching all other services, such as networking and the graphical desktop.
Kernel Space vs. User Space
- Kernel Space – where the kernel executes with full access to hardware.
- User Space – where regular applications (browsers, terminals, etc.) run.
This separation isolates user‑level crashes from the kernel, enhancing system stability.
A Useful Command
To view what happened during boot, you can inspect the kernel’s message buffer:
dmesg | less
dmesg(display message) prints kernel log entries.- The pipe (
|) passes the output toless, allowing you to scroll through the log page by page.
Examining this output helps you understand how the kernel interacted with your hardware during startup.
My Progress
Learning these fundamentals moves me beyond blindly following tutorials. Now I can diagnose slow boots or failures by consulting the logs. I’ve also added flash cards for this chapter to my Flashy memorizer, which you can use for revision.