This video is an overview of how Linux boots from power on to login.
Watch the bonus: video:https://youtu.be/4yDxxodO5vI
HOW LINUX BOOTS
A simplified view of the boot process:
1. POST (Power On Self Test) – Runs diagnostics on hardware.
2. BIOS (Basic Input Output System) or UEFI (Unified Extensible Firmware
Interface) – Finds and starts the boot loader.
3. GRUB (Grand Unified Boot Loader) – Gives users a chance to choose an OS
(Operating System) to run and also offers older kernels, recovery
mode, memory testing and a shell. GRUB usually loads the latest Linux
kernel and intramfs automatically. It starts the kernel and exits.
4. Linux Kernel – Initializes devices and loads drivers, kernel modules and
the init program from initramfs. It then mounts the root filesystem and
starts init with a process ID of 1. This is where user space begins.
5. Systemd – The init program found on most modern Linux distribution. It
starts and manages essential services such as udevd and syslogd. It sets up
network configuration and starts high level services like cron and cups.
Once the services are running, it then starts getty for user login or a
graphic desktop manager like GDM, KDM or LightDM. the init program is also
used to perform an orderly computer shutdown.








I got addicted to fast booting kernels since learning about systemd and its tools like systemd-analyze plot/blame/critical-chain. That was about 15 years ago.
It started with noticing that wicked, usb-ahci and Plymouth take too much time while booting. Optimizing and tuning that, I got boot times down from 20s to under 3s.
But then I started to build my own custom kernels that don't need any initramfs — my kernels mount their root fs directly from SSD and init(1) everything from there.
My Intel rig boots into KDE+networking in under 800ms, my Ryzen rig takes a bit longer (i blame UEFI); it takes about 1.5s my standard KDE desktop.
It's really been so much fun learning about all those alternatives to GRUB (bootctl), NetworkManager (ip -batch) or postfix (Exim) while being able to completely kick out bloat like IPv6, WiFi, Bluetooth, virtualization, btrfs and much more stuff — code I don't need won't get compiled into my kernels.
I attempted some of the commands myself – cool stuff to know about! Also, I can recall my first computer (back then with Suse Linux 8.0 Personal Edition) to take forever to boot because someone configured it to attempt to use Ethernet networking. So, the boot screen showed the process of literally waiting for 15 seconds to receive an IP address from somewhere. I had no network to connect the computer to.
NO SystemD!!
It only serves to try to hide the important details from the sysadmin.
lilo still works well and it doesn't have the complication and potential problems that GRUB can have.
Thanks Joe, for explaining some of the things I didn't know I didn't know about this process. Always a joy to hear new things and I'm sure some of it will stick. Thanks for almost an hour of relaxing informative content. Cheers.
Apparently, I am a Linux nerd or it's cuz I am working on mostly older hardware oldest is 2017 previous was 1998 lolz So have know choice but attempt to read and understand the boot process thanks for the info will be watching your pass videos 😊
I haven’t had the chance to watch the whole vid yet but it seems like a good one and I certainly plan to watch the rest of it later.
I would like to strongly suggest you stop putting solid red borders around the thumbnails as they’re easy to mistake for that “previously watched progress bar” youtube puts on videos someone’s already watched.
On the iPad app at least it looks a whole lot like it and I almost disregarded the video as “having watched it a long time ago and forgotten” had I not noticed it also said “one day ago” and i realized that I hadn’t actually watched it. (i’m glad i clicked on it now since it seems very interesting)
Keep up the great work! 😀
when I boot up my computer. Just before Linux Mint starts. I get this error on the upper left of my screen. The computer still boots fine. But I get the following error. EFI stub warning failed to measure data for event 1: 0x8 0000000000000001
i typed grub on my command like and it said grub was not found
Took the RHCSA earlier this year, and man was that a hard test. Thinking about taking the RHCSE, but I've gotta get a job first. And plus, find a job that will allow me to put in place a database. My last job wouldn't. My last boss said it was a single point of failure. That's the reason we have backups. Nope, nope, can't have that, single point of failure.
Yeh, I quietly quit that job.
Small feedback:
The red bar on the bottom of the thumbnail should probably be deleted.
I almost didn't click on the video as this bar looks like the YouTube symbol for 'you already watched this video'…