The 5-Second Boot: Optimizing Arch Linux Performance (2025)
We choose Arch because it stays out of the way, so when boot creeps past fifteen seconds it feels personal. Fixing it is a loop, not a trick: measure, change one thing, measure again. Bas, that is the whole method. Here are the commands that run the loop.
Measure first, always
systemd records the cost of every unit at startup; you just have to ask.
systemd-analyze
systemd-analyze blame
systemd-analyze critical-chain NetworkManager.service
systemd-analyze plot > boot.svg
The first line splits boot into kernel, initrd and userspace, and tells you which layer to attack. blame ranks every service by what it cost you. critical-chain shows what was actually waiting on what — pass it a unit name for that service's full story. And plot draws the whole boot as an SVG timeline; open it in a browser and every wasted gap is visible.
The usual villain
On most laptops the top of blame is NetworkManager-wait-online.service, holding the entire boot hostage for a network it will have anyway seconds after login. Unless you mount network drives at boot, disable it and take the single biggest win:
systemctl disable NetworkManager-wait-online.service
If you run LUKS and suspect entropy stalls: kernels 5.6 and newer seed the random generator quickly, so it is rarely the culprit anymore.
Trim the initrd
In /etc/mkinitcpio.conf, keep zstd compression — the sane default — or try lz4 if you want decompression a shade faster and have EFI space to spare. Audit the HOOKS array: every hook costs time, so with no RAID, LVM or encryption, drop mdadm_udev, lvm2 and encrypt. And confirm intel-ucode or amd-ucode is loaded early so the CPU gets its fixes from the first moment.
Audit the services
A fresh Arch boots fast; six months of printers, Bluetooth and virtualisation later, it does not.
systemctl list-unit-files --state=enabled
Disable what you do not use — cups without a printer, libvirtd between VM seasons — and start things by hand with systemctl start when needed. Adding quiet loglevel=3 to your kernel parameters is the free half-second: console output is slower than it looks.
There is a philosophy hiding in this ritual: the machine answers to you, down to the millisecond. Free software is also what lets a student in Gaza keep working on whatever second-hand laptop survives — no licence server, no subscription, no expiry date on learning. Free tools, free people. I think of that every time the login prompt arrives early.
We joke at the desk that Arch users are our people: both camps care that things be exactly right. We cannot compile your holiday, but we are every bit as particular — seat numbers confirmed, Makkah hotel distances in writing, visa files checked twice before they leave. That is HTG Travels in Sialkot. Bring us your exacting requirements; between us, we have the same condition.




