Easy Linux backup software with Time Machine like functionality
It's easy to be impressed by Apple's Time Machine backup feature. It works in the background, is seamlessly integrated, and when you need to get to restore something whoa.. you're all of a sudden in space, travelling back in time, bringing something back to the present.
There are two key things to this system. First it's an incremental backup system which allows you to restore from multiple past versions of files that are backed up (the "time travelling"). Second, it's very easy to use and provides a very impressive experience.
So do we have anything like that in the Linux world? Well, for the most part we do, and here's what we've got.
Of all of the applications on this list Cronopete tries to mimic the Time Machine experience most faithfully, even if it isn't the most feature packed or the most flexible of backup tools (neither is Time Machine).
Cronopete requires your backup destination to be a hard drive other than the one your system is installed on, either a second hard drive in your computer or an external USB storage device. This makes sense in so far as saving a backup on the same drive as the original files doesn't do anything to protect your data from the failure of that hard drive. However, as a side note, this is also why I couldn't test it myself as I don't have a second hard drive currently, and it wouldn't work with my USB stick.
Cronopete's simple main window allows you to select the backup disk, and set a few options, namely which files to include or exclude, how often in hours should it do a backup, and whether to backup hidden files and folders. Then you can turn it on and it should do the rest on its own. The system tray icon shows the current status. Red means trouble with the set up, orange means trouble with the backup process, and green means everything's alright.
According to its documentation Cronopete always executes a full backup, but copies over only the files that have been modified while linking the rest to a previous backup in order to save space. To execute faster it determines which files are modified by checking the date information. This keeps things fairly simple, and I believe it's in line with the way Time Machine operates as well.
As the main window informs, Cronopete will do hourly backups for the last 24h, daily for the past month, and weekly until you run out of space. You're also shown the oldest, newest, and the next backup dates.
The restore process is where Cronopete most obviously shines as a faithful clone of Time Machine. It allows you to scroll back and forth through the timeline of backups, browse through them with the live file manager, and pick something to restore.
Screenshots I've included are courtesy of Rastersoft's Cronopete documentation.
One of the best solutions of this type, BackInTime is powered by rsync, relatively well known among the experts. BackInTIme is fairly powerful yet pretty intuitive to use. You can choose what to backup, what to include and exclude either by manual choice or automated rules, how often to sync (as often as 5 minutes is available), and where to save the backed up files. Both local and network destinations are possible, the latter ones being supported via SSH, and both can optionally be encrypted as well.
Also interesting are additional and expert options such as checking for changes and not syncing if there aren't any changes, doing a backup before initiating a requested restore, and preserving permissions (ACL), extended attributes, and both safe and unsafe links when copying files to a backup.
When you start the application you'll be greeted with the settings window where you can set up these options.
Once you're all set you'll see a file browser window including the list of folders you want backed up. In the toolbar you can click the disk icon (first one) to save a backup snapshot of your folder. If you already had snapshots the reload button will update them.
It will show the work in progress in the status bar.
At that point you'll see a new snapshot date in the snapshots list.
If you select the snapshot date it will show the files and folders as they were on that date when you browse through the folders you previously selected for backup. It is like browsing through the past of those folders so if you lost or deleted something that you want back you can browse through it's snapshot to find that file, select it, and click the restore button.
You can also open the files in the snapshot like normal.
Being one of the most well known backup tools BackInTime should be available in your distro's repositories (it is in Ubuntu), but is also downloadable from its download page. There is both a GNOME and KDE4 variant so you can use the version that fits best in your desktop environment.
Deja Dup is the default backup tool in Ubuntu, even included as a Backup icon among its System Settings, and Ubuntu just calls it "Backups". It is actually a front end to Duplicity unlike BackInTime which is a front end to rsync.
If not the easiest Deja Dup is definitely one of the easiest backup tools for use on Linux, but it doesn't have the fancy time travel animations. What it does have is a simple user interface with descriptive options, and the ability to backup to just about any location including to the network servers via FTP, SSH, WebDAV, and Windows Shares (SMB).
You can select what to save, what to ignore, where to put it, and how to schedule the backups, and you're pretty much done. Just turn it on and it will start backing up. It'll offer to protect the backup with a password if you'd like that, and then proceed with the first backup. Later the Restore button will allow you to restore files from the selected location from a chosen date. Files can be restored to original locations or to a specific folder.
A great thing about Deja Dup, or at least its integration in Ubuntu, is that once you've got the backup set up you can just right click on any file in the default File Manager and restore to an earlier version. This approaches the kind of ease that Apple's Time Machine provides, albeit without the super fancy animations. You can also right click anywhere in a folder to "restore missing files" if you accidentally delete something you'd like to get back.
TimeShift is a similar tool, but it has a very specific purpose, and it is not to backup your actual user data, but rather the system files. As the TimeShift developer explains on its website, "this ensures that your files remains unchanged when you restore your system to an earlier date".
In other words you can travel back to the way your system was, including installed programs and configured settings, without this affecting your data. This can be very useful if you've made some modifications to your system and ended up breaking things. TimeShift back and you're as good as new.
As such TimeShift doesn't offer the option of choosing exactly where to backup. It has to be an external drive with sufficient amount of space to backup the entire system. It does allow you to exclude certain files and folders or include others into the backup.
Like Deja Dup, Duplicati also uses duplicity on its back end, but unlike Deja Dup it is far more equipped with options, and in turn more complex. It's user interface, or look & feel, leaves something to be desired, but then if you're gonna use Duplicati you'll probably use it for its features and might not care about the looks as much.
Duplicati allows you to set up a backup of anything to pretty much anywhere and with any kind of scheduling. You can backup to a number of online storage solutions including Amazon S3, Rackspace CloudFiles, SkyDrive, Google Docs, or another server via SSH, FTP or WebDAV. Of course, backing up to a folder on a local drive is also possible. Backups can be password protected and encrypted with a chosen method.
Scheduling can be set up for incremental backups at a given interval with a full backup every month (or other given period), or you can choose to always perform incremental or always full.
Restoring, done using a wizard, allows you to restore an entire backup to a specific folder or only selected file. As such its restoration capabilities are like those of other applications like Deja Dup and BackInTime. Also worth mentioning is that Duplicati is cross platform so it runs on Windows and Mac as well.
There are a few other applications that could be useful, but unfortunately are not maintained anymore so your mileage may vary. Notable mentions include FlyBack, another application explicitly aiming to duplicate the Time Machine features, and TimeVault, which has a nice timeline GUI for restoring files from different times. Neither of them are currently in development, so they may or may not work on your system.