☠️ HomeLab Chronicles: Bash, Bootloaders and BooBoos

Ahoy, me nerdy hearties! ⚓
Today, we sail deeper into the digital abyss, where the seas are encrypted and the only map we follow is man
pages. Welcome to Part 1 of this chaos: Getting Arch Installed & Ready for SSH Shenanigans. 🧑✈️💻
Let the plundering begin.
🪓 Step 1: Flashin’ Be Plunderin’
Get yerself a fresh Arch ISO (ye ol’ treasure map 🗺️) and flash it onto a thumb drive. Use whatever tool ye fancy — dd
, balenaEtcher
, or magic. Doesn’t matter. Just don’t accidentally nuke your primary drive or the Kraken (a.k.a. your data) shall rise.
⚰️ Step 2: Boot Ye Olde Rig
Plug in yer USB, boot that dusty Dell (or whatever sea-worn vessel ye got), and sail straight into the BIOS. Change boot order like a rebellious pirate ignoring port law, and let the Arch ISO take the wheel. 🚢
📡 Step 3: Cast the Wi-Fi Net
Time to connect to the seven signals. Enter the iwctl
tavern and speak these sacred incantations:
iwctl
station wlan0 scan
station wlan0 get-networks
station wlan0 connect wifi_name
station wlan0 show
Once you're connected, exit like a ghost (exit
), and if you’re the suspicious type (which you should be), test your signal with ping archlinux.org -c 3
, if the ping pings, the wind is in our sails. 🌬️🏴☠️
🔐 Step 4: SSH or Walk the Plank
Install OpenSSH (if it’s not already on board — usually is) pacman -S openssh
.
Set a password for the root user (yes, ye be root now — absolute pirate king 🧑✈️). Let’s say: passwd
choose something like "pass" if you're feeling lucky 🍀.
Now SSH into the box from yer main ship:
ssh root@<ip_address>
If your OS barks at ye, find an equivalent command or walk the plank.
🪚 Step 5: Slicing Up the Drive Like a Mango
Time to swashbuckle that drive:
/boot
— 1GB ⚓EFI
— 1GB 🧭- The rest? LVM party time. (But don’t forget to save a few gigs for future chaos.) Estimated ~125GB for LVM. ⚔️
We use the old-school blade: fdisk
. Because real pirates don’t use fancy new TUIs.
We're encrypting the big LVM partition, not the little ones — because we hate pain, but not that much.
🧙 Step 6: Manual Install? Aye, Because Pain is the Best Teacher
Could we run archinstall
and be done? Sure.
Do we want to? HA. No. Where’s the fun in that, matey?
We do this the hard way. Because learning builds character (and for once, not craving trauma).
🔗 Important Runes (You Will Forget Otherwise)
Trust me, sailor, these are hard-earned battle scars:
🔩 Load Device Mapper before formatting yer volumes:
modprobe dm_mod
🪛 Update mkinitcpio hooks (or prepare to scream): In
/etc/mkinitcpio.conf
, modify:HOOKS=(base udev autodetect ... encrypt lvm2 filesystems)
⚙️ Tweak GRUB so it speaks encryption: In
/etc/default/grub
, update:GRUB_CMDLINE_LINUX_DEFAULT="... cryptdevice=/dev/<drive>:<volgroup> ..."
💣 MOST IMPORTANT: Generate that GRUB config or the boot gods shall smite you:
grub-mkconfig -o /boot/grub/grub.cfg
If you skip this, your bootloader will throw a tantrum and “not find vmlinuz
or initrd
,” and you’ll be mounting USBs like a panicked sailor chasing his lost rum barrel.
(Yes, I did that. Yes, it sucked. Yes, I survived. Barely. 🥲)
🐳 What’s Next?
Now, Arch is alive and answering pings like a loyal parrot, we’ll move on to the Big Fish™: setting up Kubernetes.
But for now… pour yourself a drink, pat your encrypted SSD, and take pride. You’ve sailed through the cursed waters of manual Arch install. 🍻💾
Until next time, mateys. Keep your drives encrypted and your SSH keys close.
And remember, the name is Captain Jack Sparrow 🏴☠️
EDIT (a day later)
Today, while on the bus, I had a thought, To kubernetes I need at least two runners - 1 master and 1 worker node, and guess what, I only have 1 system to experiment with. I have three options:
- buy another machine (Too expensive)
- setup a virtualisation solution to get around it (Considering Proxmox and HyperV for now, could move to another hypervisor as well)
- hybrid setup - with master node on my machine and workers on VMS in cloud (Azure/GCP)
I am going ahead with option 2 (Hypervisor) because option 1 is expensive, and option 3 will have too many components, and if something goes wrong, there would be multiple points to check on (n/w concerns me the most). So, for now, I will start with hypervisors and then, after successful deployments and testing on my assembled cluster, probably include hybrid nodes (Azure, GCP, etc).
Subscribe to my newsletter
Read articles from Sunny directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
