22

I am implementing backup scripts in python. I'm trying to keep things cross platform. I hear there is a python based rsync implementation: http://pypi.python.org/pypi/rsync.py

But I can't seem to find it anywhere. All of the download links I find are dead. Does anyone know where I could find the rsync.py program?

At the moment I am using unison for Windows but I would like to try rsync.py

philshem
  • 24,761
  • 8
  • 61
  • 127
AndyL
  • 14,302
  • 14
  • 43
  • 70
  • rsync is portable, look for a windows build – Tobu Nov 23 '10 at 21:02
  • @Tobu: sortof. As far as I can tell rsync runs under cygwin but there is no stable native build in windows. I often hesitate to use cygwin because I have msys installed and in the past I ran into problems mixing cygwin and msys (but perhaps that is unfounded?) – AndyL Nov 23 '10 at 21:07
  • Deltacopy is a Windows port of rsync--I think its built using cygwin, but you don't need cygwin to run it. I don't think it has a CLI, though. http://www.aboutmyip.com/AboutMyXApp/DeltaCopy.jsp – Thomas K Nov 23 '10 at 21:44
  • Thanks @Thomas K! Good to know. Unfortunately I'm looking for scriptable solutions. – AndyL Nov 23 '10 at 23:41

4 Answers4

14

Alternative : pysync - implementation of the rsync and related algorithms in pure Python, and a high speed librsync Python extension

Another alternative: http://code.google.com/p/pyrsync/

pyfunc
  • 65,343
  • 15
  • 148
  • 136
  • The second link you posted is actually just a wrapper for rsync. The first one, however, looks promising. – AndyL Nov 23 '10 at 21:09
  • @AndyL: Thanks. I understand. I just thought it it is good to keep the various alternatives here as answer. – pyfunc Nov 23 '10 at 21:35
  • Thanks. The pysync README mentions windows binaries but I can't find them anywhere online. So instead I am following its instructions to compile from source. I run `python setup.py bdist_wininst' and I get an error halfway through: `error: Unable to find: vcvarsall.bat' :o/ – AndyL Nov 23 '10 at 23:50
  • 2
    @AndyL: If you have hit the biggest roadblock on compiling extension on windows. This file "vcvarsall.bat" is a batch file that sets up windows command line environment for compilers. Check out some SO discussion on this. You will have to determine your environment (Visual studio Version) and then check for the setup details. – pyfunc Nov 24 '10 at 01:43
3

Here is the algorythm (not sure if it helps you out):

http://code.activestate.com/recipes/577518-rsync-algorithm/

Sridhar Ratnakumar
  • 81,433
  • 63
  • 146
  • 187
terminus
  • 13,745
  • 8
  • 34
  • 37
1

I know that rdiff-backup is written in python and use an rsync-like algorithm. It use librsync. Note that rdiff-backup is not a replacement for rsync, so it will not fill your needs. But you can take a look at librsync and see how rdiff-backup use it.

Etienne
  • 12,440
  • 5
  • 44
  • 50
0

Here is another rsync implementation in Python:

Wolph
  • 78,177
  • 11
  • 137
  • 148