Annotation of embedaddon/rsync/rsyncdb.1, revision 1.1.1.1
1.1 misho 1: .TH "rsyncdb" "1" "06 Aug 2020" "rsyncdb 3.2.3" "User Commands"
2: .P
3: .SH "NAME"
4: .P
5: rsyncdb \- Maintain an rsync checksum DB
6: .P
7: .SH "SYNOPSIS"
8: .P
9: .nf
10: rsyncdb --db=CONFIG [OPTION...] [DIR...]
11: .fi
12: .P
13: .SH "DESCRIPTION"
14: .P
15: Rsyncdb can maintain a checksum-caching DB that rsync can use to make its
16: \fB\-\-checksum\fP option more optimal. You must specify a config file via
17: the \fB\-\-db=CONFIG_FILE\fP option in order for rsyncdb to know what DB to
18: manipulate. See the rsync manpage's \fB\-\-db\fP option for full details on
19: the file's format.
20: .P
21: You can specify one or more directory args for rsyncdb to scan. If no
22: DIR args are specified, the current directory is assumed to be the spot
23: to start scanning.
24: .P
25: Note that the rsyncdb program is usually just a symlink to the rsync program.
26: You can force rsync to behave as rsyncdb either by having a symlink (or
27: hardlink) name that ends with "db" or by \fBstarting\fP the rsync args with
28: \fB\-\-db-only=CONFIG\fP (and that option works just like \fB\-\-db=CONFIG\fP to
29: a program named rsyncdb).
30: .P
31: .SH "EXAMPLES"
32: .P
33: The following command will update checksum information in the database
34: described in the /etc/db.conf file:
35: .RS 4
36: .P
37: .nf
38: rsyncdb --db=/etc/db.conf -o n --clean /dir1 /dir2
39: .fi
40: .RE
41: .P
42: It scans 2 directory hierarchies (/dir1 & /dir2) and cleans out any
43: checksums whose inodes are no longer found in those directories (so that
44: directory args are presumed to be complete for this host's DB contents).
45: .P
46: The following command will scan all the files in the /dir2 directory (without
47: recursive scanning, due to the \fB\-\-no-r\fP option) and check them against
48: the DB:
49: .RS 4
50: .P
51: .nf
52: rsyncdb --db=/etc/db.conf --check --no-r /dir2
53: .fi
54: .RE
55: .P
56: Any errors found are output as well as being fixed in the DB. (See
57: \fB\-\-no-update\fP for how to check without updating.)
58: .P
59: The following command will output MD5 sums for all the files found in the
60: directories mentioned, even if they are unchanged (due to the
61: \fB\-\-output=us\fP option):
62: .RS 4
63: .P
64: .nf
65: rsyncdb --db=/etc/db.conf -rous /dir* >/tmp/md5sums.txt
66: .fi
67: .RE
68: .P
69: This is just like running md5sum, only faster. Unlike md5sum, you can't
70: specify a single file, so use \fB\-\-no-r\fP and grep the output if you just
71: want to see a single file's value.
72: .P
73: The following command initializes a new DB, and is required for any new DB:
74: .RS 4
75: .P
76: .nf
77: rsyncdb --db=/etc/db.conf --init --mounts
78: .fi
79: .RE
80: .P
81: The \fB\-\-init\fP option should only be used once (unless you want to
82: destroy existing data). The \fB\-\-mounts\fP option may need to be used
83: periodically, and makes use of a helper script (see below).
84: .P
85: .SH "OPTIONS SUMMARY"
86: .P
87: Rsyncdb accepts the following options:
88: .P
89: .nf
90: --db=CONFIG Specify the CONFIG file to read for the DB info
91: --db-lax Ignore ctime changes (use with CAUTION)
92: --recursive, -r Scan files in subdirs (the default w/o --no-recursive)
93: --sums=SUMS, -s List which checksums to update (default: 4,5)
94: --output=STR, -o One or more letters of what to output (default: "")
95: --check, -c Check checksums (by reading the files) and fix any
96: issues. Makes --output default to "dni".
97: --clean Note all inodes in the DIRS and remove DB extras
98: --no-update, -N Avoids updating/adding info w/--check and/or --clean
99: --init Initialize a DB by (re-)creating its tables
100: --mounts Scan for mounted filesystems and update the DB
101: --quiet, -q Disable the default non-error output
102: --help, -h Display this help message
103: .fi
104: .P
105: .SH "OPTIONS"
106: .P
107: Rsyncdb accepts both long (double-dash + word) and short (single-dash + letter)
108: options. The full list of the available options are described below. If an
109: option can be specified in more than one way, the choices are comma-separated.
110: Some options only have a long variant, not a short. If the option takes a
111: parameter, the parameter is only listed after the long variant, even though it
112: must also be specified for the short. When specifying a parameter, you can
113: either use the form \-\-option=param or replace the '=' with whitespace. The
114: parameter may need to be quoted in some manner for it to survive the shell's
115: command-line parsing.
116: .P
117: .IP "\fB\-\-db=CONFIG_FILE\fP"
118: This tells rsyncdb what DB-config file to read for the DB setup. This is
119: the same as the option in rsync, so refer to that manpage for full details.
120: .IP "\fB\-\-db-lax\fP"
121: This option works just like it does in rsync, so refer to that manpage for
122: full details.
123: .IP "\fB\-\-no-recursive,\ \-\-no-r\fP"
124: This disables the default recursive directory scan that is performed on the
125: listed directory args. The options \fB\-\-recursive\fP and \fB\-r\fP are also
126: accepted, if someone wants to override an earlier \fB\-\-no-r\fP override.
127: .IP "\fB\-\-sums=SUMS,\ \-s\fP"
128: Only output/update the listed checksum types. By default we deal with just
129: the newer md5 checksums (i.e. \fB\-\-sums=5\fP).
130: .IP
131: Note that this option does NOT affect the order that checksums are output
132: if "\-o s" is enabled, so \fB\-s5,4\fP is the same as \fB\-s4,5\fP.
133: .IP "\fB\-\-output=STR,\ \-o\fP"
134: The output option lets you specify one or more letters indicating what
135: information should be output. If \fB\-\-output\fP is not specified, the default
136: is either "dn" or (with \fB\-\-check\fP) "dni".
137: .IP
138: The following letters are accepted in the string:
139: .IP
140: .RS
141: .IP o
142: \fBd\fP outputs "... dir_name ..." lines for each directory in our scan. if
143: "d" is omitted, then this progress indictor is not output.
144: .IP o
145: \fBn\fP includes the file's name in the per-file output. These lines are only
146: output for changed files unless "u" is given. The "n" option is implied
147: by every other output option letter except "d".
148: .IP o
149: \fBs\fP includes the checksum info in the per-file output.
150: .IP o
151: \fBc\fP is a synonym for 's'.
152: .IP o
153: .IP
154: .RS
155: .IP o
156: \fBi\fP includes itemized change info in the per-file output.
157:
158: \fB!i\fP indicates that the time and/or size is wrong.
159: .IP o
160: \fB+4\fP indicates the MD4 sum is missing.
161: .IP o
162: \fB+5\fP indicates the MD5 sum is missing.
163: .IP o
164: \fB!4\fP indicates the MD4 sum is wrong.
165: .IP o
166: \fB!5\fP indicates the MD5 sum is wrong.
167: .IP o
168: \fB?4\fP indicates an unknown MD4 difference. This can happen if we didn't
169: need to read the file; i.e. if the time/size is wrong and no sum info
170: was requested.
171: .IP o
172: \fB?5\fP indicates an unknown MD5 difference.
173: .RE
174: .IP o
175: \fBu\fP includes unchanged files in the per-file output lines.
176: .RE
177: .IP "\fB\-\-check,\ \-c\fP"
178: Check the checksums (forcing the reading of all the files) and fix any
179: issues that are found. Makes \fB\-\-output\fP default to "dni".
180: .IP "\fB\-\-clean\fP"
181: Makes a temp-DB of all the inodes that we find in all the listed
182: directories and removes any extraneous checksums from the DB. You will
183: need to specify all the mounted directories that are present (and listed as
184: mounted) in the DB on this host or else the checksums from the unvisited
185: directories will be discarded from the DB. If you want to just \-\-clean
186: without adding or updating the info of new or changed files, specify
187: \fB\-\-no-update\fP as well.
188: .IP "\fB\-\-no-update,\ \-N\fP"
189: Avoids updating/adding info with \fB\-\-check\fP and/or \fB\-\-clean\fP.
190: .IP "\fB\-\-quiet,\ \-q\fP"
191: Disable the default (non-error) output settings. This turns off the
192: messages that \fB\-\-init\fP, \fB\-\-mount\fP, and \fB\-\-clean\fP output, and makes the
193: default for \fB\-\-output\fP be nothing (though an explicit \fB\-\-output\fP option is
194: not affected).
195: .IP "\fB\-\-init\fP"
196: Create the tables in the DB. If it is used on an existing DB, all the
197: existing tables are dropped and re-created.
198: .P
199: This option cannot be combined with the updating or reporting of checksum
200: information, but may be combined with \fB\-\-mounts\fP.
201: .P
202: .IP "\fB\-\-mounts\fP"
203: Populate the "disk" DB with the available device numbers and change any
204: mounted/unmount information for devices. This should be run every time a
205: mount-change happens that may affect a directory hierarchy in the DB.
206: Rsyncdb will not save any checksums for a device that is not listed in the
207: "disk" table.
208: .IP
209: The helper script "rsyncdb-mountinfo" is used as the source of the mount
210: information on the host, which it derives from various system files and
211: UUID directories (if available). That script supports the use of an
212: override file named ".rsyncdb_mount_uniq" in the root of the mount as one
213: way to manually assign unique values to a shared (mountable) device's
214: various disks.
215: .IP
216: Some advanced users may want to maintain the disk table themselves in order
217: to support mounting a drive in different (or multiple) locations, etc.
218: .IP
219: Specifying the \fB\-\-mounts\fP option cannot be combined with updating or
220: reporting of checksum information, but may be combined with \fB\-\-init\fP.
221: .IP "\fB\-\-help,\ \-h\fP"
222: Display a summary of the options.
223: .P
224: .SH "SEE ALSO"
225: .P
226: \fBrsync\fP(1)
227: .P
228: .SH "AUTHOR"
229: .P
230: Rsyncdb was written by Wayne Davison.
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>