I've tested a few of backup utilities and still haven't found one that would satisfy me.

Almost every one of them has two options:
- full backup - not an option to use frequently
- incremental backup - seems right, but there's one thing about it:
Incremental backup builds on a base of a full backup, backing up only those files, that were created/changed. The thing is, that after some time you've got a lot of unwanted files from the old backups bloating your backup device. Also, if you'd accidentally delete your full (first) backup file, then the differential backups would be corrupted (you wouldn't be able to restore them).

The thing I'm looking for is a program, that would backup files simply by copying them. It would check the backup device whether it contains the file (unchanged):
- if yes, it should proceed to the next file (we've got current version backed up)
- if no, it would copy the file to the backup device
- if the device contains a file that is no longer on our disk, the program would delete it from the backup device

Is there any such utility, that would work this way? If not, do you have any hints on how to backup fairly big amounts of data (around 20gb) quite frequently with incremental backups and not be exposed to those unwanted effects of backup size puffing up?


rsync can do everything you described with the --delete switch. Once you did a full backup with it, it only copies the changed files to the destination directory.

A good GUI-Frontend for it is grsync. Install it via the software center or via this command

sudo apt-get install grsync

and run it.

All options have a nice mouse over help. Be sure to check "Delete on destination" to get what you want.

  • Thanks for the proposal, I'll try it when I'm back from labs :) – Wojtek Oct 10 '12 at 15:52
  • Ok, I've given it a try and it really works as I'd like to, but I have one more question. How can I backup more than one folder? Can I specify more than one path per session? Or is it possible, to run all sessions at once (each with different path)? – Wojtek Oct 10 '12 at 18:45
  • You can't run all sessions at once, but you can see the actual command line for each session by going to "File" > "Rsync command line". You could put them in a shell script, to run all backups after another. Another way might be using rsync's --exclude command switch in a clever way. You can enter them in grsync's "Additional options". Some rsync examples: http://www.thegeekstuff.com/2011/01/rsync-exclude-files-and-folders/ – phoibos Oct 10 '12 at 19:13
  • Hey, I've found another workaround. I specify one source folder and in that folder I create symlinks to the folders I'd like to backup. The I set Advanced options->Additional options with a '-k' option. 'rsync' follows those symlinks and I end up having backed up all the specified folders. Thank you very much for the answers, unfortunately I can't upvote it, but when I have 15rep I'll come back to this question and surely give you +1 :) – Wojtek Oct 10 '12 at 20:19
  • rsync --delete will replace files in destination - it does not store incremental backups. – qwr Jul 10 '20 at 22:24

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.