I still haven't found the perfect backup solution for a Linux desktop. This page reports my findings.
Update: deja-dup is still not the perfect backup solution, but it is close. At least, I can tell my relatives to use it, though in case of needed restore they might need my help.
But first, a list of my requirements, since yours may differ:
- graphical interface, since my non-hacker relatives must be able to use it easily 1) preferably gtk-based
- ability to backup through smb
- ability to browse backups and restore single files
- possibility to include/exclude single folders/file types/path patterns
I consider the following as nice bonuses:
- scheduling
- profiles to allow for different schedules and/ or chosen directories/files
I admit it: I'm just looking for something like Apple Time Machine, OK?
Here are the evaluations I made (in green and red, positive and negative aspects that I consider particularly relevant in the comparison):
backintime | flyback | deja-dup | simple backup | timevault | fwbackup | pybackpack | |
---|---|---|---|---|---|---|---|
GUI | nice | <html><span style=“background:#00FF00;”>very nice</span></html> | <html><span style=“background:#00FF00;”>very nice</span></html> | <html><span style=“background:#FF0000;”>no GUI while backupping (so no errors reported!). All preferences are lost if the user clicks “use recommended backup settings”!</span></html> | ? | nice (judging from screenshots) | nice, but bad at reporting errors or providing debug info to the user |
shows progress during backup | only file currently copied | only time elapsed (and that may be an intrinsec limitation of being based on git) | <html><span style=“background:#00FF00;”>yes</span></html> | no (how could it without GUI?) | ? | ? | Quite poorly, but yes |
exclusions handling | takes apparently any regular expression - though the GUI is not very clear on that | <html><span style=“background:#FF0000;”>few preset exclude options (impossible to exclude a single subfolder)</span></html> | Can exclude paths, not regexp 2) (Bug report) | <html><span style=“background:#00FF00;”>free choice of inclusions and exclusions</span></html> | ? | only provides a list (presumably of single folders/files) | nice interface to include/exclude folders, but patterns/extensions only through manual tweaking of config files |
can browse backupped files | ? | yes, but only a list of files is provided (not organized in folders)! | <html><span style=“background:#FF0000;”>no!!!</span></html> | yes, but each incremental backup only shows files backupped at that time | ? | ? | No - though the last backup is simply a mirror image, so easy to browse/use |
can restore a single file | ? | <html><span style=“background:#00FF00;”>yes</span></html> | <html><span style=“background:#00FF00;”>Restoring previous versions of files/directories is easy with the Nautilus menu action</span></html>, restoring lost files has to be done using the shell 3) | <html><span style=“background:#00FF00;”>yes (though the operation is not very fast if the file is part of a large backup)</span></html> | ? | ? | <html><span style=“background:#FF0000;”>no!!! the only available operation is “restore the whole backup”!</span></html> |
backup targets | only filesystem | only external filesystems | filesystem, smb? | filesystem, ssh, ftp | ? | filesystem, ssh, maybe others | filesystem, ssh |
speed | ? | <html><span style=“background:#FF0000;”>very slow</span></html> | good | very good | ? | probably depends on “engine” used | <html><span style=“background:#FF0000;”>very slow</span></html> |
space occupied | <html><span style=“background:#FF0000;”>much (no compression)?</span></html> | <html><span style=“background:#00FF00;”>optimal (no replication, gzipped and for non-binary files, only updates are recorded)</span></html> | good (no replication, gzipped) | <html><span style=“background:#00FF00;”>optimal (no replication, gzipped and for non-binary files, only updates are recorded)</span></html> | ? | probably depends on “engine” used, but maybe there is no attention to replication? | much for the first backup (no compression), then diffs are gzipped, so pretty good |
other pros | <html><span style=“background:#00FF00;”>can show differences between versions of (non-binary) files</span></html> | <html><span style=“background:#00FF00;”>nice notifications mechanism</span></html> | ? | ||||
other cons | <html><span style=“background:#FF0000;”>Doesn't keep track of emtpy folders and folders/files permissions, doesn't allow deleting old backups. Not available in Debian repositories, neither as a tarball! Available only as a (low quality) .deb</span></html> | <html><span style=“background:#FF0000;”>(at least by default), only runnable by root</span></html> By default, simply skips files bigger than 10 MB. If at some time “standard settings” button is clicked, all settings are lost. <html><span style=“background:#FF0000;”>Unmaintained, deprecated.</span></html>(Debian bug) | <html><span style=“background:#FF0000;”>doesn't work with python 2.6! Last commit (as of April 2010) was in 2007!</span></html> | Doesn't catch even common errors such as “low space”. |
Other apps I may want to look at: zink, grsync, areca, nssbackup (?), hubackup (?).
Contributions and suggestions will be appreciated: me [AT] pietrobattiston [GUESS WHAT… DOT!] it