drsync is a Perl wrapper for rsync which keeps track of the filelist between synchronizations. If you delete a file in one place, it will delete it in the other place; if you add a file, it copies to the other place. It is ideal for notebook users who want to keep data in two (or more) different places. It is also good for the Linux PDAs (Agenda, iPAQ, Yopi, etc.), to keep data synchronized with the desktop. The requirements are designed to be minimum.
| Tags | Communications |
|---|---|
| Licenses | GPL Artistic |
| Operating Systems | POSIX Linux |
| Implementation | Perl |
Recent releases


Changes: This program was into a Perl module, making it possible to use its features from any Perl script. Some code cleanup was also done.


No changes have been submitted for this release.


Changes: Support for rsync 2.5.2, --backup and --suffix commandline options, and documentation tweaks.


Changes: Verbose operation fixes, support for the --progress option of rsync, and rsync error handling.


Changes: Perl 5.005 support, ability to create directories if necessary, --verbose behaviour changes, and new "Command-line Switches", "How it works", and short-term and long-term TODO-s in the manual.
- All comments
Recent commentsRe: Is it necessary?
> What would be interresting would be
> something like a mix of this and CVS
> merge - that is, that if a file is
> changed on both sides, and is a
> text-file, it would merge the changes
> nicely... Ok, that probably creates a
> need to keep the original file, too...
This is out of the scope of this project :-(
It requires more than an rsync wrapper.
The perfect solution would be a SyncML client-server implementation.
Re: Is it necessary?
What would be interresting would be something like a mix of this and CVS merge - that is, that if a file is changed on both sides, and is a text-file, it would merge the changes nicely... Ok, that probably creates a need to keep the original file, too...
Re: Is it necessary?
> Hmm... Interesting idea, but (IMHO) it
> can be done with rsync itself:
>
> $ rsync -a --delete /src/path
> rsync://dst.host.com/path/
>
> The option `--delete' does exactly
> what is necessary to make destionation
> look like source, i.e. all files that
> does not exist on source side will be
> deleted on destination side.
>
> So - what for we need the wrapper?
> :)
>
It is used for 2 or more-way syncing. Imagine you add and remove files in both sides of the archive. You must keep track the filelist if you want to make difference between the 2 thing: someone added a new file in side A or someone delete a file in side B. In the first case you need to copy the file from A to B, in the second case, you must remove the file from A.
Is it necessary?
Hmm... Interesting idea, but (IMHO) it can be done with rsync itself:
$ rsync -a --delete /src/path rsync://dst.host.com/path/
The option `--delete' does exactly what is necessary to make destionation look like source, i.e. all files that does not exist on source side will be deleted on destination side.
So - what for we need the wrapper? :)