System replication with ZFS

Using zrepl and bash, we can rebuild a system as is from incremental backups.

Published: 06/10/2026

Back in April, I lost power during a crucial step of updating my system. This left me coming home to my system in a non-booting state. I was able to boot into a LiveCD and chroot into my system, however, upon successfully updating, and rebuilding my kernel, and initramfs, the system still wouldn’t boot. While, I am still confident this was a situation I could have rescued from, I had been wanting to make the move from btrfs to zfs for a while to try out incremental backups with zrepl. I decided to bit the bullet and reinstall my operating system, first making a backup of all of my user data.

One issue I’ve always had with my backup solutions was that in the event of an emergency, I didn’t have a full recovery solution planned. This would almost always result in my following the exact pattern I am now. Reinstalling the operating system of my choice, and copying over useful data from backups manually. This almost always ended with a system that was only half replicated, or worse, sometimes with me missing important data entirely for months at a time. This time, I wanted to create the recovery solution as part of the process of setting up my backup solution.

Setting up zrepl

Installing archiso and configuring the boot environment

Creating & testing the recovery script

Insights & Reflections

Moving Forward