views:

45

answers:

3

Hello,

CentOS 5.3 subversion 1.4.2

I forgot to add. Currently the total repository size is about 5GB, but that will grow over time.

We have our source code and documents on our internal server running CentOS 5.3 and we are using subversion 1.4.2.

We are looking for a backup strategy. We want to perform daily backups. We have about 30 repositories to backup of differing sizes.

I could create a script file and recursively backup using svnadmin dump.

However, I am looking for an automated backup system that will run nightly say 12am each day.

Does anyone know of any backup systems that are open-source? I think my company is reluctant to pay for any system.

Many thanks for any advice,

+1  A: 

There are more open source solutions that I could name, but for this application my choice would be rsync and a cron job.

Here is a good overview of some open source options (some are more desktop oriented).

EDIT

The nice thing about rsync, is it can directly sync the folder storing the repo. The downside of this approach is it could sync a corrupt repository. Doing a dump and storing incremental backups would protect you from this.

Despite what I recommended above, my personal preference would be to avoid subversion altogether. With a DVCS like git or mercurial, ever developer's has a full working copy of the repository that can be used to restore the copy on your shared server.

mikerobi
Thanks for the suggestion for rsync. I have been looking at that. However, would I have to do the svnadmin dump first then backup with rsync?
robUK
@robUK, updated my post to address this.
mikerobi
+1  A: 

Check out the possible duplicate. It's not hard to write a script and schedule it as a cron job. I'd suggest doing both an incremental nightly backup (svnadmin dump) and a weekly complete backup (hotcopy).

JoshD
+1  A: 

I my opinion, it is not really required for you to really create a svn dump for backup. svn dump is a list of changesets which are listed in a single file, this might be more resource intensive. I just believe you will be able to just compress the filesystem where all the repositories are and at a later point will be able restore it.

The other option I can think of is rsvndump, this kind of dump can be performed incrementally which will reduce the time considerably.

If you are looking for a disaster recovery point of view probably you can have one another parallel system which you can do a svnsync which will create a repo backup every few mins, this way you the amount of data you would miss in the backup might be very minimal or none.

Version Control Buddy