]>
Commit | Line | Data |
---|---|---|
1227625a SP |
1 | .\" Copyright (c) 1980, 1991, 1993 |
2 | .\" Regents of the University of California. | |
3 | .\" All rights reserved. | |
4 | .\" | |
5 | .\" Redistribution and use in source and binary forms, with or without | |
6 | .\" modification, are permitted provided that the following conditions | |
7 | .\" are met: | |
8 | .\" 1. Redistributions of source code must retain the above copyright | |
9 | .\" notice, this list of conditions and the following disclaimer. | |
10 | .\" 2. Redistributions in binary form must reproduce the above copyright | |
11 | .\" notice, this list of conditions and the following disclaimer in the | |
12 | .\" documentation and/or other materials provided with the distribution. | |
13 | .\" 3. All advertising materials mentioning features or use of this software | |
ddd2ef55 | 14 | .\" must display the following acknowledgement: |
1227625a SP |
15 | .\" This product includes software developed by the University of |
16 | .\" California, Berkeley and its contributors. | |
17 | .\" 4. Neither the name of the University nor the names of its contributors | |
18 | .\" may be used to endorse or promote products derived from this software | |
19 | .\" without specific prior written permission. | |
20 | .\" | |
21 | .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND | |
22 | .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | |
23 | .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | |
24 | .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE | |
25 | .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | |
26 | .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS | |
27 | .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | |
28 | .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | |
29 | .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | |
30 | .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | |
31 | .\" SUCH DAMAGE. | |
32 | .\" | |
51b01afe | 33 | .\" $Id: dump.8.in,v 1.17 2000/11/10 11:48:31 stelian Exp $ |
1227625a | 34 | .\" |
8d4197bb | 35 | .Dd __DATE__ |
1227625a | 36 | .Dt DUMP 8 |
df9ae507 | 37 | .Os "dump __VERSION__" |
1227625a SP |
38 | .Sh NAME |
39 | .Nm dump | |
ddd2ef55 | 40 | .Nd ext2 filesystem backup |
1227625a SP |
41 | .Sh SYNOPSIS |
42 | .Nm dump | |
dc7cb1e2 | 43 | .Op Fl 0123456789ackMnSu |
1227625a SP |
44 | .Op Fl B Ar records |
45 | .Op Fl b Ar blocksize | |
46 | .Op Fl d Ar density | |
0d7af9c5 | 47 | .Op Fl e Ar inode number |
1227625a | 48 | .Op Fl f Ar file |
0d7af9c5 | 49 | .Op Fl F Ar script |
1227625a | 50 | .Op Fl h Ar level |
b45f51d6 | 51 | .Op Fl L Ar label |
1227625a SP |
52 | .Op Fl s Ar feet |
53 | .Op Fl T Ar date | |
79e31865 | 54 | .Ar file-to-dump |
1227625a SP |
55 | .Nm dump |
56 | .Op Fl W Li \&| Fl w | |
57 | .Pp | |
8d4197bb | 58 | .in |
1227625a SP |
59 | (The |
60 | .Bx 4.3 | |
ddd2ef55 | 61 | option syntax is implemented for backward compatibility but |
1227625a SP |
62 | is not documented here.) |
63 | .Sh DESCRIPTION | |
64 | .Nm Dump | |
65 | examines files | |
ddd2ef55 | 66 | on an ext2 filesystem |
1227625a SP |
67 | and determines which files |
68 | need to be backed up. These files | |
69 | are copied to the given disk, tape or other | |
70 | storage medium for safe keeping (see the | |
71 | .Fl f | |
72 | option below for doing remote backups). | |
73 | A dump that is larger than the output medium is broken into | |
74 | multiple volumes. | |
75 | On most media the size is determined by writing until an | |
ddd2ef55 | 76 | end-of-media indication is returned. This can be enforced |
b45f51d6 SP |
77 | by using the |
78 | .Fl a | |
79 | option. | |
80 | .Pp | |
1227625a | 81 | On media that cannot reliably return an end-of-media indication |
ddd2ef55 | 82 | (such as some cartridge tape drives), |
1227625a | 83 | each volume is of a fixed size; |
ddd2ef55 | 84 | the actual size is determined by the tape size, density and/or |
1227625a SP |
85 | block count options below. |
86 | By default, the same output file name is used for each volume | |
87 | after prompting the operator to change media. | |
88 | .Pp | |
79e31865 SP |
89 | .Ar file-to-dump |
90 | is either a mountpoint of a filesystem | |
91 | or a directory to be backed up as a subset of a filesystem. | |
92 | In the former case, either the path to a mounted filesystem | |
93 | or the device of an unmounted filesystem can be used. | |
94 | In the latter case, certain restrictions are placed on the backup: | |
95 | .Fl u | |
96 | is not allowed and the only dump level that is supported is | |
97 | .Fl 0 . | |
98 | .Pp | |
1227625a | 99 | The following options are supported by |
b45f51d6 | 100 | .Nm Ns : |
1227625a SP |
101 | .Bl -tag -width Ds |
102 | .It Fl 0\-9 | |
103 | Dump levels. | |
104 | A level 0, full backup, | |
105 | guarantees the entire file system is copied | |
106 | (but see also the | |
107 | .Fl h | |
108 | option below). | |
109 | A level number above 0, | |
110 | incremental backup, | |
ddd2ef55 SP |
111 | tells |
112 | .Nm dump | |
113 | to | |
1227625a | 114 | copy all files new or modified since the |
ae58c8da | 115 | last dump of a lower level. |
ddd2ef55 | 116 | The default level is 9. |
1227625a | 117 | .It Fl B Ar records |
b45f51d6 | 118 | The number of 1 KB blocks per volume. |
1227625a SP |
119 | This option overrides the calculation of tape size |
120 | based on length and density. | |
b45f51d6 SP |
121 | .It Fl a |
122 | .Dq auto-size . | |
123 | Bypass all tape length considerations, and enforce writing | |
124 | until an end-of-media indication is returned. This fits best | |
125 | for most modern tape drives. Use of this option is particularly | |
126 | recommended when appending to an existing tape, or using a tape | |
127 | drive with hardware compression (where you can never be sure about | |
128 | the compression ratio). | |
1227625a SP |
129 | .It Fl b Ar blocksize |
130 | The number of kilobytes per dump record. | |
ddd2ef55 SP |
131 | Since the IO system slices all requests into chunks of MAXBSIZE |
132 | (typically 64KB), it is not possible to use a larger blocksize | |
133 | without having problems later with | |
134 | .Xr restore 8 . | |
135 | Therefore | |
136 | .Nm dump | |
137 | will constrain writes to MAXBSIZE. | |
65bceb9b | 138 | The default blocksize is 10. |
1227625a | 139 | .It Fl c |
b45f51d6 SP |
140 | Change the defaults for use with a cartridge tape drive, with a density |
141 | of 8000 bpi, and a length of 1700 feet. | |
20c345aa SP |
142 | .It Fl e Ar inode |
143 | Exclude | |
144 | .Ar inode | |
145 | from the dump (you can use | |
146 | .Ar stat | |
147 | to find the inode number for a file or directory). | |
b45f51d6 SP |
148 | .It Fl h Ar level |
149 | Honor the user | |
150 | .Dq nodump | |
151 | flag | |
152 | .Dp Dv UF_NODUMP | |
153 | only for dumps at or above the given | |
154 | .Ar level . | |
155 | The default honor level is 1, | |
156 | so that incremental backups omit such files | |
157 | but full backups retain them. | |
1227625a SP |
158 | .It Fl d Ar density |
159 | Set tape density to | |
160 | .Ar density . | |
161 | The default is 1600BPI. | |
162 | .It Fl f Ar file | |
163 | Write the backup to | |
164 | .Ar file ; | |
165 | .Ar file | |
166 | may be a special device file | |
167 | like | |
ddd2ef55 | 168 | .Pa /dev/st0 |
1227625a SP |
169 | (a tape drive), |
170 | .Pa /dev/rsd1c | |
b45f51d6 | 171 | (a floppy disk drive), |
1227625a SP |
172 | an ordinary file, |
173 | or | |
174 | .Ql Fl | |
175 | (the standard output). | |
176 | Multiple file names may be given as a single argument separated by commas. | |
177 | Each file will be used for one dump volume in the order listed; | |
178 | if the dump requires more volumes than the number of names given, | |
179 | the last file name will used for all remaining volumes after prompting | |
180 | for media changes. | |
181 | If the name of the file is of the form | |
ddd2ef55 | 182 | .Dq host:file |
1227625a | 183 | or |
ddd2ef55 | 184 | .Dq user@host:file |
b45f51d6 | 185 | .Nm |
1227625a SP |
186 | writes to the named file on the remote host using |
187 | .Xr rmt 8 . | |
b45f51d6 SP |
188 | The default path name of the remote |
189 | .Xr rmt 8 | |
190 | program is | |
191 | .\" rmt path, is the path on the remote host | |
192 | .Pa /etc/rmt ; | |
193 | this can be overridden by the environment variable | |
194 | .Ev RMT . | |
0d7af9c5 | 195 | .It Fl F Ar script |
365a7c7c SP |
196 | Run script at the end of each tape. The device name and the |
197 | current volume number are passed on the command line. | |
198 | The script must return 0 if | |
ae81b200 SP |
199 | .Nm |
200 | should continue without asking the user to change the tape, 1 if | |
201 | .Nm | |
202 | dump should continue but ask the user to change the tape. | |
203 | Any other exit code will cause | |
204 | .Nm | |
205 | to abort. | |
206 | For security reasons, | |
207 | .Nm | |
208 | reverts back to the real user ID and the real group ID before | |
209 | running the script. | |
b45f51d6 SP |
210 | .It Fl k |
211 | Use Kerberos authentication to talk to remote tape servers. (Only | |
212 | available if this option was enabled when | |
213 | .Nm | |
214 | was compiled.) | |
215 | .It Fl L Ar label | |
216 | The user-supplied text string | |
217 | .Ar label | |
218 | is placed into the dump header, where tools like | |
219 | .Xr restore 8 | |
220 | and | |
221 | .Xr file 1 | |
222 | can access it. | |
223 | Note that this label is limited | |
224 | to be at most LBLSIZE (currently 16) characters, which must include | |
225 | the terminating | |
226 | .Ql \e0 . | |
dc7cb1e2 SP |
227 | .It Fl M |
228 | Enable the multi-volume feature. The name specified with | |
229 | .Fl f | |
230 | is treated as a prefix and | |
231 | .Nm | |
232 | writes in sequence to <prefix>001, <prefix>002 etc. This can be | |
233 | useful when dumping to files on an ext2 partition, in order to bypass | |
234 | the 2GB file size limitation. | |
1227625a SP |
235 | .It Fl n |
236 | Whenever | |
b45f51d6 | 237 | .Nm |
1227625a SP |
238 | requires operator attention, |
239 | notify all operators in the group | |
240 | .Dq operator | |
241 | by means similar to a | |
242 | .Xr wall 1 . | |
243 | .It Fl s Ar feet | |
244 | Attempt to calculate the amount of tape needed | |
245 | at a particular density. | |
246 | If this amount is exceeded, | |
b45f51d6 | 247 | .Nm |
1227625a SP |
248 | prompts for a new tape. |
249 | It is recommended to be a bit conservative on this option. | |
250 | The default tape length is 2300 feet. | |
251 | .ne 1i | |
144a6db1 SP |
252 | .It Fl S |
253 | Size estimate. Determine the amount of space | |
254 | that is needed to perform the dump without | |
255 | actually doing it, and display the estimated | |
2e682895 | 256 | number of bytes it will take. This is useful |
144a6db1 SP |
257 | with incremental dumps to determine how many |
258 | volumes of media will be needed. | |
1227625a SP |
259 | .It Fl T Ar date |
260 | Use the specified date as the starting time for the dump | |
261 | instead of the time determined from looking in | |
8d4197bb | 262 | .Pa __DUMPDATES__ . |
ddd2ef55 SP |
263 | The format of |
264 | .Ar date | |
265 | is the same as that of | |
1227625a SP |
266 | .Xr ctime 3 . |
267 | This option is useful for automated dump scripts that wish to | |
268 | dump over a specific period of time. | |
269 | The | |
270 | .Fl T | |
271 | option is mutually exclusive from the | |
272 | .Fl u | |
273 | option. | |
274 | .It Fl u | |
275 | Update the file | |
8d4197bb | 276 | .Pa __DUMPDATES__ |
1227625a SP |
277 | after a successful dump. |
278 | The format of | |
8d4197bb | 279 | .Pa __DUMPDATES__ |
1227625a SP |
280 | is readable by people, consisting of one |
281 | free format record per line: | |
282 | filesystem name, | |
283 | increment level | |
284 | and | |
285 | .Xr ctime 3 | |
286 | format dump date. | |
287 | There may be only one entry per filesystem at each level. | |
288 | The file | |
8d4197bb | 289 | .Pa __DUMPDATES__ |
1227625a SP |
290 | may be edited to change any of the fields, |
291 | if necessary. | |
292 | .It Fl W | |
293 | .Nm Dump | |
294 | tells the operator what file systems need to be dumped. | |
295 | This information is gleaned from the files | |
8d4197bb | 296 | .Pa __DUMPDATES__ |
1227625a SP |
297 | and |
298 | .Pa /etc/fstab . | |
299 | The | |
300 | .Fl W | |
301 | option causes | |
b45f51d6 | 302 | .Nm |
51b01afe | 303 | to print out, for all file systems in |
8d4197bb | 304 | .Pa __DUMPDATES__ , |
51b01afe SP |
305 | and regognized file systems in |
306 | .Pa /etc/fstab . | |
1227625a | 307 | the most recent dump date and level, |
51b01afe | 308 | and highlights those that should be dumped. |
1227625a SP |
309 | If the |
310 | .Fl W | |
311 | option is set, all other options are ignored, and | |
b45f51d6 | 312 | .Nm |
1227625a SP |
313 | exits immediately. |
314 | .It Fl w | |
ddd2ef55 SP |
315 | Is like |
316 | .Fl W , | |
51b01afe SP |
317 | but prints only recognized filesystems in |
318 | .Pa /etc/fstab | |
319 | which need to be dumped. | |
1227625a SP |
320 | .El |
321 | .Pp | |
322 | .Nm Dump | |
323 | requires operator intervention on these conditions: | |
324 | end of tape, | |
325 | end of dump, | |
326 | tape write error, | |
327 | tape open error or | |
ddd2ef55 | 328 | disk read error (if there is more than a threshold of 32). |
1227625a SP |
329 | In addition to alerting all operators implied by the |
330 | .Fl n | |
331 | key, | |
b45f51d6 | 332 | .Nm |
1227625a SP |
333 | interacts with the operator on |
334 | .Em dump's | |
335 | control terminal at times when | |
b45f51d6 | 336 | .Nm |
1227625a SP |
337 | can no longer proceed, |
338 | or if something is grossly wrong. | |
339 | All questions | |
b45f51d6 | 340 | .Nm |
1227625a SP |
341 | poses |
342 | .Em must | |
343 | be answered by typing | |
344 | .Dq yes | |
345 | or | |
346 | .Dq no , | |
347 | appropriately. | |
348 | .Pp | |
349 | Since making a dump involves a lot of time and effort for full dumps, | |
b45f51d6 | 350 | .Nm |
1227625a SP |
351 | checkpoints itself at the start of each tape volume. |
352 | If writing that volume fails for some reason, | |
b45f51d6 | 353 | .Nm |
1227625a SP |
354 | will, |
355 | with operator permission, | |
356 | restart itself from the checkpoint | |
357 | after the old tape has been rewound and removed, | |
358 | and a new tape has been mounted. | |
359 | .Pp | |
360 | .Nm Dump | |
361 | tells the operator what is going on at periodic intervals, | |
362 | including usually low estimates of the number of blocks to write, | |
363 | the number of tapes it will take, the time to completion, and | |
364 | the time to the tape change. | |
365 | The output is verbose, | |
366 | so that others know that the terminal | |
367 | controlling | |
b45f51d6 | 368 | .Nm |
1227625a SP |
369 | is busy, |
370 | and will be for some time. | |
371 | .Pp | |
372 | In the event of a catastrophic disk event, the time required | |
373 | to restore all the necessary backup tapes or files to disk | |
374 | can be kept to a minimum by staggering the incremental dumps. | |
375 | An efficient method of staggering incremental dumps | |
376 | to minimize the number of tapes follows: | |
377 | .Bl -bullet -offset indent | |
378 | .It | |
379 | Always start with a level 0 backup, for example: | |
380 | .Bd -literal -offset indent | |
8d4197bb | 381 | /sbin/dump -0u -f /dev/st0 /usr/src |
1227625a SP |
382 | .Ed |
383 | .Pp | |
384 | This should be done at set intervals, say once a month or once every two months, | |
385 | and on a set of fresh tapes that is saved forever. | |
386 | .It | |
387 | After a level 0, dumps of active file | |
388 | systems are taken on a daily basis, | |
389 | using a modified Tower of Hanoi algorithm, | |
390 | with this sequence of dump levels: | |
391 | .Bd -literal -offset indent | |
392 | 3 2 5 4 7 6 9 8 9 9 ... | |
393 | .Ed | |
394 | .Pp | |
395 | For the daily dumps, it should be possible to use a fixed number of tapes | |
396 | for each day, used on a weekly basis. | |
397 | Each week, a level 1 dump is taken, and | |
398 | the daily Hanoi sequence repeats beginning with 3. | |
399 | For weekly dumps, another fixed set of tapes per dumped file system is | |
400 | used, also on a cyclical basis. | |
401 | .El | |
402 | .Pp | |
403 | After several months or so, the daily and weekly tapes should get | |
404 | rotated out of the dump cycle and fresh tapes brought in. | |
b45f51d6 SP |
405 | .Sh ENVIRONMENT |
406 | .Bl -tag -width Fl | |
407 | .It Ev TAPE | |
408 | If no -f option was specified, | |
409 | .Nm | |
410 | will use the device specified via | |
411 | .Ev TAPE | |
412 | as the dump device. | |
413 | .Ev TAPE | |
414 | may be of the form | |
415 | .Qq tapename , | |
416 | .Qq host:tapename , | |
417 | or | |
418 | .Qq user@host:tapename . | |
419 | .It Ev RMT | |
420 | The environment variable | |
421 | .Ev RMT | |
422 | will be used to determine the pathname of the remote | |
423 | .Xr rmt 8 | |
424 | program. | |
0c62667d SP |
425 | .It Ev RSH |
426 | .Nm Dump | |
427 | uses the contents of this variable to determine the name of the | |
428 | remote shell command to use when doing remote backups (rsh, ssh etc.). | |
429 | If this variable is not set, | |
430 | .Xr rcmd 3 | |
431 | will be used, but only root will be able to do remote backups. | |
1227625a | 432 | .Sh FILES |
8d4197bb | 433 | .Bl -tag -width __DUMPDATES__ -compact |
ddd2ef55 | 434 | .It Pa /dev/st0 |
1227625a | 435 | default tape unit to dump to |
8d4197bb | 436 | .It Pa __DUMPDATES__ |
1227625a SP |
437 | dump date records |
438 | .It Pa /etc/fstab | |
439 | dump table: file systems and frequency | |
440 | .It Pa /etc/group | |
441 | to find group | |
442 | .Em operator | |
443 | .El | |
444 | .Sh SEE ALSO | |
b45f51d6 | 445 | .Xr fstab 5 , |
1227625a | 446 | .Xr restore 8 , |
b45f51d6 | 447 | .Xr rmt 8 |
1227625a SP |
448 | .Sh DIAGNOSTICS |
449 | Many, and verbose. | |
450 | .Pp | |
ddd2ef55 SP |
451 | .Nm Dump |
452 | exits with zero status on success. | |
1227625a SP |
453 | Startup errors are indicated with an exit code of 1; |
454 | abnormal termination is indicated with an exit code of 3. | |
455 | .Sh BUGS | |
ddd2ef55 SP |
456 | It might be considered a bug that this version of dump can only handle ext2 |
457 | filesystems. Specifically, it does not work with FAT filesystems. | |
458 | .Pp | |
459 | Fewer than 32 read errors on the filesystem are ignored. If noticing | |
460 | read errors is important, the output from dump can be parsed to look for lines | |
461 | that contain the text 'read error'. | |
1227625a SP |
462 | .Pp |
463 | Each reel requires a new process, so parent processes for | |
464 | reels already written just hang around until the entire tape | |
465 | is written. | |
466 | .Pp | |
1227625a | 467 | It would be nice if |
b45f51d6 | 468 | .Nm |
1227625a SP |
469 | knew about the dump sequence, |
470 | kept track of the tapes scribbled on, | |
471 | told the operator which tape to mount when, | |
472 | and provided more assistance | |
473 | for the operator running | |
474 | .Xr restore . | |
b45f51d6 SP |
475 | .Pp |
476 | .Nm Dump | |
477 | cannot do remote backups without being run as root, due to its | |
0c62667d | 478 | security history. |
b45f51d6 | 479 | Presently, it works if you set it setuid (like it used to be), but this |
0c62667d SP |
480 | might constitute a security risk. Note that you can set RSH to use |
481 | a remote shell program instead. | |
8d4197bb SP |
482 | .Sh AUTHOR |
483 | The | |
484 | .Nm dump/restore | |
485 | backup suit was ported to Linux's Second Extended File System | |
486 | by Remy Card <card@Linux.EU.Org>. He maintained the initial versions | |
487 | of dump (up and including 0.4b4, released in january 1997). | |
488 | .Pp | |
489 | Starting with 0.4b5, the new maintainer is Stelian Pop | |
490 | .br | |
491 | <pop@cybercable.fr>. | |
492 | .Sh AVAILABILITY | |
493 | The | |
494 | .Nm dump/restore | |
01fb6bd5 SP |
495 | backup suit is available from |
496 | .br | |
497 | http://dump.sourceforge.net | |
1227625a SP |
498 | .Sh HISTORY |
499 | A | |
b45f51d6 SP |
500 | .Nm |
501 | command appeared in | |
502 | .At v6 . |