Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
liblongpath-rsync
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
liblongpath
liblongpath-rsync
Commits
98f51bfb
Commit
98f51bfb
authored
Jul 20, 2004
by
Wayne Davison
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
- More batch-file improvements.
- A few spelling fixes.
parent
73f0ce69
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
41 additions
and
24 deletions
+41
-24
rsync.yo
rsync.yo
+41
-24
No files found.
rsync.yo
View file @
98f51bfb
...
...
@@ -487,14 +487,14 @@ from the sender.
dit(bf(--inplace)) This causes rsync not to create a new copy of the file
and then move it into place. Instead rsync will overwrite the existing
file, meaning that the rsync algorithm can't extract the full am
m
ount of
file, meaning that the rsync algorithm can't extract the full amount of
network reduction it might otherwise.
This option is useful for transfer of large files with block based changes
and also on systems that are disk bound not network bound.
WARNING: The file's data will be in an inconsistent state during the
transfer (and possibly afterward
s
if the transfer gets interrupted), so you
transfer (and possibly afterward if the transfer gets interrupted), so you
should not use this option to update files that are in use. Also note that
rsync will not update a file inplace that is not writable by the receiving
user.
...
...
@@ -913,7 +913,7 @@ result is an average transfer rate equaling the specified limit. A value
of zero specifies no limit.
dit(bf(--write-batch=FILE)) Record a file that can later be applied to
ano
n
ther identical destination with --read-batch. See the "BATCH MODE"
another identical destination with --read-batch. See the "BATCH MODE"
section for details.
dit(bf(--read-batch=FILE)) Apply all of the changes stored in FILE, a
...
...
@@ -1145,36 +1145,46 @@ at once, instead of sending the same data to every host individually.
Examples:
verb(
$ rsync --write-batch=batch -a /source/dir/ /adest/dir/
$ ssh remote rsync --read-batch=- -a /bdest/dir/ <batch
$ rsync --write-batch=foo -a host:/source/dir/ /adest/dir/
$ scp foo* remote:
$ ssh remote ./foo.sh /bdest/dir/
)
verb(
$ rsync --write-batch=batch -a host:/source/dir/ /adest/dir/
$ scp batch remote:
$ ssh remote rsync --read-batch=batch -a /bdest/dir/
$ rsync --write-batch=foo -a /source/dir/ /adest/dir/
$ ssh remote rsync --read-batch=- -a /bdest/dir/ <foo
)
verb(
$ rsync --write-batch=batch -a /source/dir/ host:/adest/dir/
$ scp batch* remote:
$ ssh remote ./batch.sh /bdest/dir/
)
In these examples, rsync is used to update /adest/dir/ from /source/dir/
and the information to repeat this operation is stored in "foo" and
"foo.sh". The host "remote" is then updated with the batched data going
into the directory /bdest/dir. The differences between the two examples
reveals some of the flexibility you have in how you deal with batches:
itemize(
it() The first example shows that the initial copy doesn't have to be
local -- you can push or pull data to/from a remote host using either the
remote-shell syntax or rsync daemon syntax, as desired.
In these examples, rsync is used to update /adest/dir/ with /source/dir/
and the information to repeat this operation is stored in "batch" and
"batch.sh". The host "remote" is then updated with the batched
update going into the directory /bdest/dir. The differences between the
three examples is in how the batch gets to the remote machine (via remote
stdin or by being copied first), whether the initial transfer was local or
remote, and in how the batch-reading rsync command is invoked.
it() The first example uses the created "foo.sh" file to get the right
rsync options when running the read-batch command on the remote host.
it() The second example reads the batch data via standard input so that
the batch file doesn't need to be copied to the remote machine first.
This example avoids the foo.sh script because it needed to use a modified
--read-batch option, but you could edit the script file if you wished to
make use of it (just be sure that no other option is trying to use
standard input, such as the "--exclude-from=-" option).
)
Caveats:
The read-batch option expects the destination tree
it is meant to update
The read-batch option expects the destination tree
that it is updating
to be identical to the destination tree that was used to create the
batch update fileset. When a difference between the destination trees
is encountered the update
will
fail at that point, leaving the
is encountered the update
might
fail at that point, leaving the
destination tree in a partially updated state. In that case, rsync can
be used in its regular (non-batch) mode of operation to fix up the
destination tree.
...
...
@@ -1182,7 +1192,7 @@ destination tree.
The rsync version used on all destinations must be at least as new as the
one used to generate the batch file.
The -
n/--dryrun
option does not work in batch mode and yields a runtime
The -
-dry-run (-n)
option does not work in batch mode and yields a runtime
error.
You should use an equivalent set of options when reading a batch file that
...
...
@@ -1196,6 +1206,13 @@ the batch file. For example, it would not work to change the setting of
the -H or -c option, but it would work to add or remove the --delete
option.
The code that creates the BATCH.sh file transforms any include/exclude
options into a single list that is appended as a "here" document to the
shell script file. An advanced user can use this to modify the exclude
list if a change in what gets deleted by --delete is desired. A normal
user can ignore this detail and just use the shell script as an easy way
to run the appropriate --read-batch command for the batched data.
See bf(http://www.ils.unc.edu/i2dsi/unc_rsync+.html) for papers and technical
reports.
...
...
@@ -1359,7 +1376,7 @@ and David Bell for helpful suggestions, patches and testing of rsync.
I've probably missed some people, my apologies if I have.
Especial thanks also to: David Dykstra, Jos Backus, Sebastian Krahmer,
Martin Pool, Wayne Davison.
Martin Pool, Wayne Davison
, J.W. Schultz
.
manpageauthor()
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment