Just recently I was using ZPaq to perform a daily backup of my home folder (which is around 40GB decompressed). ZPaq uses the Paq compression algorithm [1] which is one of the best ones. While xz -9e compressed my homepage into 17 GB (around 40%), ZPaq got it to like 11 GB!!.

And it also has archiving capabilities, so if you run it every day, it will only add missing files and remove files that are not there anymore. It has "snapshot" capabilities, so you can uncompress the files at a specific version, to restore deleted files.

I combined ZPaq with Par2 to add 15% of redundancy (to recover the zpaq file in case of corruption). Everything looks great.

cat ~/.local/bin/homebackup.sh
FILENAME="/media/myname/TimeShift Backup/backups/home_myname.zpaq"
DIRNAME=$(dirname "$FILENAME")

if [ ! -f "$FILENAME" ] then mkdir -p "$DIRNAME" pushd "$DIRNAME" zpaq add "$FILENAME" /home/mhname/ -m4 nice -n 15 par2 c -r15 "$FILENAME" popd fi

[1] https://en.wikipedia.org/wiki/PAQ