Yet another rsync incremental thread

macuserfr macuserfr at free.fr
Fri Jul 18 10:40:34 GMT 2008


Hello all,

Since the rsync on Panther many things changed in my professional  
life. This project is abandoned although it should work. But this you  
already know. What's new? On my new job I have several servers to  
administrate. Servers that aren't backed up (sic). So, there's why I'm  
back to rsync.

The backup plan I would like:

1) Client side: PCs running rsync (or cwrsync with UTF-8 mod for long  
names for windows ones). They run rsync (I don't need data encryption  
so no need to ssh unless it's simpler) and pull data they want to the  
backup server. This side is OK.

2) Server side: A standard PC with FreeNAS FreeBSD distrib, RAID-1  
disks and rsync server. Here I would like the backups to be  
incremental and rotated, with a sort of time stamp. Here is where  
things get complicated.

Solutions I've found:

A - Simpler at the end but would need modifications to rsync: Go  
further on the backup module of rsync, building in the rotate mv/rm  
commands. Why simpler? Because a rsync client would only do one  
command to the rsync server saying "there is it", and the server do  
it's own internal cook with the stuff. No need to additional scripts.  
I know that rsync isn't an incremental backup tool at the basis but a  
syncing tool. But as it already do some of the work, why not doing it  
better?

B - As I said before, additional scripts. Do the client open an ssh  
connection, do the pre_backup.sh then close ssh (as I understood even  
using ssh for rsync, it uses it own tunnel, and not an already opened  
one, no?) run rsync, then rerun ssh, do the post_backup.sh. That  
should work, but why scripting many times (I'm sure I'm not the only  
one in this case) when it could be done once for all?

C - Between A and B solutions, rsync could, in a first time, have an  
option to run pre and post scripts when running on ssh. In this manner  
there would not be needed to open and close ssh 3 times.

D - I looked at rsnapshot, but it wouldn't help on this case of  
rotating server side folders. I also found complicated scripts for  
rotating folders from the server, but the client would need putting a  
flag on the server saying syncing is done. All of this don't seem to  
be the good approach for me. To much complicated to respond to some  
lines of code missing on rsync (OK, missing for me but I know that  
this isn't the original goal of rsync and it does lovely what it was  
designed for).

Well, I'm not an rsync expert, so please correct my exposé if I'm  
wrong. I think solution C would be easy to code, solution A would be  
the ideal for me but requires some more functions. I'm ready to help  
coding it. What do you think? Am I on the right path? Would this  
addition being integrated to the main rsync (after testing, of  
course)? Any other remarks or suggestions?

Best regards,

Vitorio


More information about the rsync mailing list