systemd boot with Arch on a Thinkpad x200s

Yes, I’m still using a Thinkpad x200s. Why? I love its design. I like having no Touchpad. And the way I’m using it, it fulfills my needs. It’s my day to day device and for everything else I do have a few hardware servers (Supermicro, Dell, HPE) and a few rented servers (netcup and 1blu).

I am always searching for ways to shorten my boot time and, I believe, I’ve found the fastest way now. What I actually did, was finetuning the file /etc/mkinitcpio.conf. Normally it looks like this. Mine now consists of the following 7 lines:

$ cat /etc/mkinitcpio.conf
MODULES="btrfs "                          # filesystems
MODULES+="sd_mod uhci_hcd ahci ehci_pci " # storage
MODULES+="atkbd i8042 "                   # keyboard
MODULES+="crc32c_generic serio_raw"       # miscellaneous
BINARIES="fsck fsck.btrfs btrfs btrfsck"
FILES=""
HOOKS="base"

Now my x200s doesn’t need 12 to 15 seconds to start, I can login after about 9 seconds.

$ systemd-analyze
Startup finished in 2.259s (kernel) + 6.744s (userspace) = 9.003s
$ systemd-analyze blame
          2.379s docker.service
           840ms dev-sda.device
           367ms tlp.service
           351ms systemd-networkd.service
           228ms unbound.service
           171ms systemd-resolved.service
           170ms systemd-journal-flush.service
           151ms systemd-udev-trigger.service
           139ms systemd-journald.service
           134ms systemd-hostnamed.service
           107ms var.mount
            98ms home.mount
            96ms systemd-timesyncd.service
            95ms mnt-defvol.mount
            91ms iptables.service
            72ms systemd-sysctl.service
            67ms systemd-udevd.service
            52ms systemd-remount-fs.service
            50ms systemd-modules-load.service
            49ms systemd-logind.service
            44ms systemd-tmpfiles-setup-dev.service
            33ms systemd-backlight@backlight:intel_backlight.service
            29ms dev-mqueue.mount
            23ms systemd-update-utmp.service
            21ms systemd-backlight@backlight:acpi_video0.service
            20ms kmod-static-nodes.service
            19ms dev-hugepages.mount
            19ms systemd-tmpfiles-setup.service
            17ms tmp.mount
            17ms systemd-user-sessions.service
            17ms systemd-random-seed.service
            15ms alsa-restore.service
            14ms sys-kernel-debug.mount
             9ms sys-kernel-config.mount
             4ms docker.socket

Yes, I’m that crazy about startup time.