Homelab
The servers in my house: what runs on them, what broke, and what I'd do differently.
The journey
How the lab started and how it grew.
My Homelab Journey: The Beginnings
Follow my journey to build an affordable homelab using an Intel NUC, Synology NAS, and TP-Link router. Discover my motivations, hardware choices and setup tips.
HomeLab, 4 min read
My Homelab Journey: The Ubuntu Phase
Discover the journey of building a homelab with Ubuntu, virtualization insights, Docker's ease, Proxmox vs. Ubuntu decisions, and hypervisor benefits.
HomeLab, 3 min read
My Homelab Journey: Redundancy Without RAID
Discover how I set up my Synology NAS for optimal storage and redundancy in my home lab, balancing media files and crucial backups.
HomeLab, 3 min read
My Homelab Journey: Connecting My NAS to the Server
Step-by-step guide on how to connect a Synology NAS to a Linux server for efficient data management and network storage solutions in your home lab.
HomeLab, 6 min read
My Homelab Journey: Moving from a Synology NAS to unRAID on an Intel NUC
A NUC has no PCIe slot and no drive bays, so the M.2 slot became a 6-port SATA controller, a used ATX PSU powers and cools four drives, and the whole thing fits the wall rack with 1 mm to spare.
HomeLab, 4 min read
unRAID and storage
Disks, the array, the boot drive, and upgrades.
Shrinking an unRAID Array from 3 Data Disks to 2 and Keeping the Old Disk as a Spare
Disk prices are high, so I removed a disk instead of buying one: unBALANCE to empty it, New Config with preserve all, a parity rebuild, and the permission, mover and ZFS traps after.
HomeLab, 5 min read
Upgrading unRAID 7.0.1 to 7.3.2 in One Jump: 13 Risks, 3 Minutes Down
How I planned a three-minor-version unRAID jump with 13 written risks and an answer for each, what the 3-minute upgrade looked like, and the fallout that showed up after.
HomeLab, 7 min read
The USB Boot Drive That Dropped Twice: Detecting and Replacing an unRAID Flash
My unRAID boot flash fell off the USB bus twice in nine days. How a direct-read heartbeat and an off-box watcher caught it, and how the swap, license move, and label trap went.
HomeLab, 8 min read
Three unRAID Disks Failed at Once. It Was a SATA Power Plug.
DRDY DF ERR, ABRT and SATA link down on three drives in one night, all SMART-clean. How the error signature pointed at power, not media, and how I proved the fix.
HomeLab, 6 min read
Backups
What gets copied where, and the times it silently did not.
Backing Up Docker Appdata on unRAID Without Stopping Every Container Every Night
How I moved the unRAID Appdata Backup plugin to "do not stop" by default, took a consistent Home Assistant SQLite copy with a pre-container hook, and hit the containerOrder and \r\n gotchas.
HomeLab, 4 min read
My Glacier Cleanup Deleted Nothing for 49 Runs: rclone One-Way Checks and Deep Archive Orphans
Why my rclone orphan cleanup for S3 Glacier Deep Archive never deleted a file, and the lsf + comm rewrite with an ORPHAN_MAX guard, a 180 day server-modtime window, and a 66 h run marker.
HomeLab, 7 min read
A Windows PC Backup That Never Reported Up: Robocopy /ZB, ERROR 50, and a Silent 6 h Kill
My robocopy backup to an unRAID Samba share had never once completed. How /Z, /B, a 6 hour task limit and an end-of-run monitor push hid it, and the fixes that got a full run to 10m53s.
HomeLab, 5 min read
AWS Glacier Deep Archive: Ultimate Cold Storage Backup Solution for My Homelab
How I implemented a cost-effective 3-2-1 backup strategy using AWS Glacier Deep Archive, saving money while ensuring my critical data is protected against catastrophic failures.
HomeLab, 10 min read
Monitoring and ops
Knowing when a job fails, and what took the server down.
Monitoring Cron Jobs with Uptime Kuma Push Monitors (After Healthchecks Went Silent)
How I watch every homelab cron job with Uptime Kuma push monitors: the ping helper, alert timing math, the 90 s interval rule, maintenance windows, and a watcher for when the whole box dies.
HomeLab, 8 min read
Auditing My Homelab Cron Scripts with an AI Auditor and a Skeptic
I had AI agents audit every unRAID user script in auditor and skeptic pairs, then got an outside review. It found database dumps disabled since April and a cleanup job deleting the backup image daily.
HomeLab, 5 min read
My AI Agents Took Down My Own Server: A Read-Only Saturation Cascade on unRAID
Parallel AI agents opened 33 SSH sessions in a minute and pushed my NUC to load 60.51. The flash alert was a victim, the host recovered alone, and read-only turned out not to mean harmless.
HomeLab, 5 min read
93 GB of Chrome Crash Dumps in My Docker Image: Debugging a Headless Browser Container
A browserless container filled unRAID's docker.img with 2.28M Chrome crash dumps. The loop behind it, the tmpfs guard, a pids-limit host freeze, and why the image tag is pinned.
HomeLab, 6 min read
Self-hosted apps
The services I run and how I set them up.
Paperless-ngx with Azure OCR, LLM Autofill, and a 59,486-Mail Backfill
Paperless-ngx on unRAID with Azure Document Intelligence OCR, an LLM hook that files every document, a PDF unlock hook, and a Proton Bridge mail backfill.
HomeLab, 7 min read
AdGuard Home: The Essential Shield for My Homelab
How AdGuard Home transformed my network with powerful ad blocking, enhanced privacy, and family-friendly filtering using my perfectly balanced blocklist setup.
HomeLab, 4 min read
My Top Choices For Selfhosted Applications
Explore must-have self-hosted apps for your home lab, from AdGuard Home for ad blocking to Home Assistant for automation. Learn to integrate these tools with Docker volumes and network shares.
HomeLab, 3 min read
Media stack
Quality profiles and subtitles for my own library.
Subtitle Sync I Can Trust: Checking Bazarr's Arabic Shifts Against English and the Audio
A Bazarr match score says nothing about timing. How I shift Arabic subtitles only when English text and the audio agree, the eight tests behind it, and a scoring fault it exposed.
HomeLab, 5 min read
Picking HDR Formats for the Screen I Actually Own: DV Boost, No HDR10+, Recyclarr as Code
My TV decodes HDR10+ and my library scores zero for it. How I pick HDR formats from the real playback chain, keep the policy in one Recyclarr file, and test it with open demo clips.
HomeLab, 5 min read
Smart home
Zigbee, MQTT, and Home Assistant.
A Zigbee Thermostat That Lies: Moving a TYBAC-006 Fan Coil Stat off Tuya Cloud
121 AC button presses in 8 days proved my wall thermostat's reading was useless. Moving to a Zigbee TYBAC-006 fixed the cloud problem and brought four new quirks.
HomeLab, 6 min read
Mosquitto Without Persistence Took Every Zigbee Device Offline in Home Assistant
A broker restart dropped every retained MQTT discovery message, so Home Assistant marked all Zigbee2MQTT entities unavailable while the devices kept working. The mechanism, the fix, and the proof.
HomeLab, 5 min read
One Writer for the AC: Fixing a Zigbee2MQTT Race That Left My Thermostat at 20 C
6 of 79 AC boosts left my Zigbee thermostat stuck at 20 C for up to 196 minutes. The cause was concurrent /set messages. The fix was one queued Home Assistant script.
HomeLab, 5 min read
Zigbee Routing: Why a Sleepy Sensor Went Stale and How a Router Plug Fixed It
A Zigbee end device keeps its parent until it rejoins. How my bedroom sensor went silent under a thermostat, moved to a router plug, and how I detect staleness with last_seen.
HomeLab, 6 min read