Needed files: /boot/zbm-update.sh (from here) Its purpose is automated restore or for update of ZFSBootMenu on ESP partition /boot/zbm-kcl (from ZFSBootMenu or from here, to configure defaults in EFI file) /boot/zfsbootmenu-recovery-x86_64-v3.0.1-linux6.12.EFI (from ZFSBootMenu) On Arch Linux: - Use Linux package linux-lts for compatibility with ZFS. Package linux is sometimes too new. - Install packages zfs-dkms and zfs-utils, version 2.3.3 or higher. - In file /etc/mkinitcpio.conf add "zfs" to HOOKS=() line. - Run mkinitcpio -P to rebuild files. Use tar like so to create a full copy of filesystem: Hint: Close any programs, shutdown databases and all services which like to write to disk, or use a rescue Linux booted from USB. time sudo ionice -c3 nice -n19 chrt -i 0 \ tar \ --use-compress-program="/usr/bin/zstd -T0 -6" \ --warning=no-file-ignored \ --preserve-permissions \ --one-file-system \ --numeric-owner \ --sort=name \ --xattrs \ --xattrs-include='*' \ --totals \ --create \ --sparse \ --acls \ --file - \ /boot / | \ ssh \ -c aes128-ctr \ -o Compression=no \ root@yourhost \ "dd bs=16M status=progress of=/mnt/ssd/meran-1.tar.zst" Restore? tar --xattrs --xattrs-include='*' --acls -xvzpf data.tar.gz -C /mnt/new_disk See clone-workstation.sh for more clues UEFI of machine shall then boot the following file from first FAT16 partition: /EFI/BOOT/BOOTX64.EFI See zbm-update.sh for more clues To troubleshoot initramfs e.g. when root fs is missing, use: rd.debug rd.log=all printk.devkmsg=on as kernel boot parameters. If your machine does not boot with a 6.12 kernel, try the ZFSbootmenu files that use 6.6 or 6.1. For periodic snapshots use bzfs or pyznap. Pyznap version in this directory has some unpublished bugfixes by me and various authors. Compare to github version to verify changes are benign. Once on ZFS, check out backup.sh on how to produce standalone TAR backups using snapshots. 2025-08-19 --se