Two-way Sync of Directories - how? (rsync?)

Kai Grossjohann kai at emptydomain.de
Sun Mar 14 22:17:12 PST 2004


Stephen Liu <satimis at icare.com.hk> writes:

> On Monday 15 March 2004 04:10, Bill Campbell wrote:
>
>> I would do this with two rsync runs from one machine
>>
>> cd $directory
>> rsync -e ssh -vaurP ./ $remote:$directory
>> rsync -e ssh -vaurP $remote:$directory/ .
>
> Hi Bill,
>
> Is the option
> -P  --partial  -- progress
> means 'incremental'    ???

"-P" is the same as specifying both "--partial" and "--progress".
"--progress" means to show a progress meter.  Normally, if you
interrupt rsync while it is transferring a file, rsync will delete the
partially transferred file.  If you give the "--partial" option, it
will not do that.

The advantage of specifying "--partial" is that you can interrupt it
in the midst of transferring a 1G file, and then you can resume the
transfer later.

> What will be difference between
> './ $remote:$directory'  and  '$remote:$directory/'

This question does not make sense.  You should ask for the difference
between './ $remote:$directory' and '$remote:$directory/ .'; note the
trailing period.

If you say "rsync a b" then this means copy from a to b, if you say
"rsync b a", then this means copy from b to a.  In the above case, "a"
was "." and "b" was "$remote:$directory" ...

Explaining the trailing slash is more difficult.  I just remember a
rule of thumb: if you want to copy directories with rsync, always
specify a trailing slash.  On both the source and the destination.  Of
course, "man rsync" has the full story...

Kai





More information about the freebsd-questions mailing list