A seconda di ciò di cui hai bisogno dai tuoi backup, rdiff-backup potrebbe essere quello che vuoi. Si basa sulla stessa idea di rsync, ma mantiene anche i backup storici (in modo efficiente in termini di spazio, memorizzando le differenze).
Dirvish crea istantanee incrementali (che sembrano alberi di directory completi, grazie alla magia degli hardlink), usando rysnc sotto il cofano. Funziona bene per me.
rsync è quello che stai cercando. Ecco un bel tutorial.
Ecco il comando che utilizzo per i backup incrementali della mia macchina virtuale utilizzando rsync.
rsync -avh --delete --progress --link-dest="/Volumes/canteloup/vm_backups/`ls -1tr /Volumes/canteloup/vm_backups/ | tail -1`" "/Users/julian/Documents/Parallels" "/Volumes/canteloup/vm_backups/`date +%Y-%m-%d-%H-%M-%S`"
-avh
significa fare una a archivio, con v output erbose in una h forma leggibile dall'uomo.
--delete
si assicurerà che ogni backup incrementale non contenga file che sono stati eliminati dall'ultimo backup. Significa che il backup eseguito in una data particolare sarà un'istantanea della directory com'era in quella data.
--progress
visualizzerà nel terminale l'importo trasferito, la percentuale e il tempo rimanente per ogni file. Utile per i backup di macchine virtuali con file di dimensioni superiori a 40 Gb.
--link-dest
specifica la directory da utilizzare per creare collegamenti per i file che non sono stati modificati. Usa ls -rt | tail -1
per ottenere l'ultimo file. Sembra andare bene se il file non esiste, come la prima volta che viene eseguito.
L'argomento successivo è la directory di cui eseguire il backup.
L'ultimo arg è la directory di destinazione. Il nome è un timestamp.