947 members (64 online)
A few days ago I was confronted with the problem to automatically backup some data directories once a day. I was looking for a free solution, but all I found where solutions that do a full backup every time. That would be very space consuming, so I was looking for a solution that can do incremental backups.
But there was nothing for Windows with support for incremental backups AND without paying a fee. I know there are many commercial solutions, but generally they are hard to afford for a small company. After a few commercial windows solution I looked deeper into some Linux solutions and finally got to rsnapshot.
rsync to synchronize with the remote directories. It also supports incremental backups by using the well known hard links of the linux universe.
The backup process works as follows (assuming there already exists at least one backup):
rsynced with the remote folder. Changed files get overridden (the hard link gets deleted, but the file still exists in the old backup folders)
This seems like a perfect solution, but not for windows. There exists a port to Cygwin, but then the hard links would be created on an NTFS partition (yes ntfs supports hard links) but they have a different behaviour when copying or deleting those files, so i decided to use a Linux backup box with ext2.
But how to sync from Windows to Linux? Just install rsync server on the Windows box (cwrsync) and share the data folders.
So my current backup solution looks as follows:
The relevant lines in crontab look as follows:
00 21 * * * root rsnapshot daily 00 3 * * 1 root rsnapshot weekly
If you have further questions, leave me a comment.