How make a complete backup

Clonezilla has its uses and it’s pretty good at that. But IMO there’s no point in having downtime just to image your server. Particularly if you don’t need your OS to be backed up.

If you do need your OS, check out ReaR (Relax-and-Recover). Or learn how to do it manually by rsync’ing your OS folders (not difficult) and doing a “chroot install” to recover (if you follow the arch-wiki, instead of pacstrap, you literally dump your backed up data in the mounted partitions, then chroot / arch-chroot to edit some stuff). You can do this on any distro (yes, even ubuntu).

If you only need your program data, you just back up your user data, the database (logical dump or offline db file system copy) and maybe arguably your program binaries (if these can’t be easily obtained, or if you want to keep a certain version with certain data).

The only redeeming trait / saving grace for clonezilla is that you get to reboot your servers. GOOD! And again, if you do want your OS backed up, you can take at least 1 clonezilla backup and then go with online (or at least online OS) backups.

Why not just use btrfs to create those three directories? Snapshot your way to happiness and pull snapshot copies remotely as needed.

There are some limitations running in a container, but I know you can create subvols and snapshots. I haven’t tried send/receive from within a container, but I bet that would work. And there are always other ways of doing that.

Also, I’d pull from the backup machine for security sake. Why not, right?