]>
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 | .\" | |
0d7af9c5 | 33 | .\" $Id: dump.8.in,v 1.12 2000/03/02 11:34:51 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 | |
54 | .Ar filesystem | |
55 | .Nm dump | |
dc7cb1e2 | 56 | .Op Fl 0123456789ackMnSu |
1227625a SP |
57 | .Op Fl B Ar records |
58 | .Op Fl b Ar blocksize | |
59 | .Op Fl d Ar density | |
0d7af9c5 | 60 | .Op Fl e Ar inode number |
1227625a | 61 | .Op Fl f Ar file |
0d7af9c5 | 62 | .Op Fl F Ar script |
1227625a | 63 | .Op Fl h Ar level |
b45f51d6 | 64 | .Op Fl L Ar label |
1227625a SP |
65 | .Op Fl s Ar feet |
66 | .Op Fl T Ar date | |
67 | .Ar directory | |
68 | .Nm dump | |
69 | .Op Fl W Li \&| Fl w | |
70 | .Pp | |
8d4197bb | 71 | .in |
1227625a SP |
72 | (The |
73 | .Bx 4.3 | |
ddd2ef55 | 74 | option syntax is implemented for backward compatibility but |
1227625a SP |
75 | is not documented here.) |
76 | .Sh DESCRIPTION | |
77 | .Nm Dump | |
78 | examines files | |
ddd2ef55 | 79 | on an ext2 filesystem |
1227625a SP |
80 | and determines which files |
81 | need to be backed up. These files | |
82 | are copied to the given disk, tape or other | |
83 | storage medium for safe keeping (see the | |
84 | .Fl f | |
85 | option below for doing remote backups). | |
86 | A dump that is larger than the output medium is broken into | |
87 | multiple volumes. | |
88 | On most media the size is determined by writing until an | |
ddd2ef55 | 89 | end-of-media indication is returned. This can be enforced |
b45f51d6 SP |
90 | by using the |
91 | .Fl a | |
92 | option. | |
93 | .Pp | |
1227625a | 94 | On media that cannot reliably return an end-of-media indication |
ddd2ef55 | 95 | (such as some cartridge tape drives), |
1227625a | 96 | each volume is of a fixed size; |
ddd2ef55 | 97 | the actual size is determined by the tape size, density and/or |
1227625a SP |
98 | block count options below. |
99 | By default, the same output file name is used for each volume | |
100 | after prompting the operator to change media. | |
101 | .Pp | |
102 | The following options are supported by | |
b45f51d6 | 103 | .Nm Ns : |
1227625a SP |
104 | .Bl -tag -width Ds |
105 | .It Fl 0\-9 | |
106 | Dump levels. | |
107 | A level 0, full backup, | |
108 | guarantees the entire file system is copied | |
109 | (but see also the | |
110 | .Fl h | |
111 | option below). | |
112 | A level number above 0, | |
113 | incremental backup, | |
ddd2ef55 SP |
114 | tells |
115 | .Nm dump | |
116 | to | |
1227625a | 117 | copy all files new or modified since the |
ae58c8da | 118 | last dump of a lower level. |
ddd2ef55 | 119 | The default level is 9. |
1227625a | 120 | .It Fl B Ar records |
b45f51d6 | 121 | The number of 1 KB blocks per volume. |
1227625a SP |
122 | This option overrides the calculation of tape size |
123 | based on length and density. | |
b45f51d6 SP |
124 | .It Fl a |
125 | .Dq auto-size . | |
126 | Bypass all tape length considerations, and enforce writing | |
127 | until an end-of-media indication is returned. This fits best | |
128 | for most modern tape drives. Use of this option is particularly | |
129 | recommended when appending to an existing tape, or using a tape | |
130 | drive with hardware compression (where you can never be sure about | |
131 | the compression ratio). | |
1227625a SP |
132 | .It Fl b Ar blocksize |
133 | The number of kilobytes per dump record. | |
ddd2ef55 SP |
134 | Since the IO system slices all requests into chunks of MAXBSIZE |
135 | (typically 64KB), it is not possible to use a larger blocksize | |
136 | without having problems later with | |
137 | .Xr restore 8 . | |
138 | Therefore | |
139 | .Nm dump | |
140 | will constrain writes to MAXBSIZE. | |
1227625a | 141 | .It Fl c |
b45f51d6 SP |
142 | Change the defaults for use with a cartridge tape drive, with a density |
143 | of 8000 bpi, and a length of 1700 feet. | |
20c345aa SP |
144 | .It Fl e Ar inode |
145 | Exclude | |
146 | .Ar inode | |
147 | from the dump (you can use | |
148 | .Ar stat | |
149 | to find the inode number for a file or directory). | |
b45f51d6 SP |
150 | .It Fl h Ar level |
151 | Honor the user | |
152 | .Dq nodump | |
153 | flag | |
154 | .Dp Dv UF_NODUMP | |
155 | only for dumps at or above the given | |
156 | .Ar level . | |
157 | The default honor level is 1, | |
158 | so that incremental backups omit such files | |
159 | but full backups retain them. | |
1227625a SP |
160 | .It Fl d Ar density |
161 | Set tape density to | |
162 | .Ar density . | |
163 | The default is 1600BPI. | |
164 | .It Fl f Ar file | |
165 | Write the backup to | |
166 | .Ar file ; | |
167 | .Ar file | |
168 | may be a special device file | |
169 | like | |
ddd2ef55 | 170 | .Pa /dev/st0 |
1227625a SP |
171 | (a tape drive), |
172 | .Pa /dev/rsd1c | |
b45f51d6 | 173 | (a floppy disk drive), |
1227625a SP |
174 | an ordinary file, |
175 | or | |
176 | .Ql Fl | |
177 | (the standard output). | |
178 | Multiple file names may be given as a single argument separated by commas. | |
179 | Each file will be used for one dump volume in the order listed; | |
180 | if the dump requires more volumes than the number of names given, | |
181 | the last file name will used for all remaining volumes after prompting | |
182 | for media changes. | |
183 | If the name of the file is of the form | |
ddd2ef55 | 184 | .Dq host:file |
1227625a | 185 | or |
ddd2ef55 | 186 | .Dq user@host:file |
b45f51d6 | 187 | .Nm |
1227625a SP |
188 | writes to the named file on the remote host using |
189 | .Xr rmt 8 . | |
b45f51d6 SP |
190 | The default path name of the remote |
191 | .Xr rmt 8 | |
192 | program is | |
193 | .\" rmt path, is the path on the remote host | |
194 | .Pa /etc/rmt ; | |
195 | this can be overridden by the environment variable | |
196 | .Ev RMT . | |
0d7af9c5 SP |
197 | .It Fl F Ar script |
198 | Run script at the end of each tape. The script must return 0 | |
199 | if the dump should continue without asking the user to change | |
200 | the tape, 1 if the dump should continue but ask the user | |
201 | to change the tape. Any other exit code will cause dump to | |
202 | abort. | |
b45f51d6 SP |
203 | .It Fl k |
204 | Use Kerberos authentication to talk to remote tape servers. (Only | |
205 | available if this option was enabled when | |
206 | .Nm | |
207 | was compiled.) | |
208 | .It Fl L Ar label | |
209 | The user-supplied text string | |
210 | .Ar label | |
211 | is placed into the dump header, where tools like | |
212 | .Xr restore 8 | |
213 | and | |
214 | .Xr file 1 | |
215 | can access it. | |
216 | Note that this label is limited | |
217 | to be at most LBLSIZE (currently 16) characters, which must include | |
218 | the terminating | |
219 | .Ql \e0 . | |
dc7cb1e2 SP |
220 | .It Fl M |
221 | Enable the multi-volume feature. The name specified with | |
222 | .Fl f | |
223 | is treated as a prefix and | |
224 | .Nm | |
225 | writes in sequence to <prefix>001, <prefix>002 etc. This can be | |
226 | useful when dumping to files on an ext2 partition, in order to bypass | |
227 | the 2GB file size limitation. | |
1227625a SP |
228 | .It Fl n |
229 | Whenever | |
b45f51d6 | 230 | .Nm |
1227625a SP |
231 | requires operator attention, |
232 | notify all operators in the group | |
233 | .Dq operator | |
234 | by means similar to a | |
235 | .Xr wall 1 . | |
236 | .It Fl s Ar feet | |
237 | Attempt to calculate the amount of tape needed | |
238 | at a particular density. | |
239 | If this amount is exceeded, | |
b45f51d6 | 240 | .Nm |
1227625a SP |
241 | prompts for a new tape. |
242 | It is recommended to be a bit conservative on this option. | |
243 | The default tape length is 2300 feet. | |
244 | .ne 1i | |
144a6db1 SP |
245 | .It Fl S |
246 | Size estimate. Determine the amount of space | |
247 | that is needed to perform the dump without | |
248 | actually doing it, and display the estimated | |
2e682895 | 249 | number of bytes it will take. This is useful |
144a6db1 SP |
250 | with incremental dumps to determine how many |
251 | volumes of media will be needed. | |
1227625a SP |
252 | .It Fl T Ar date |
253 | Use the specified date as the starting time for the dump | |
254 | instead of the time determined from looking in | |
8d4197bb | 255 | .Pa __DUMPDATES__ . |
ddd2ef55 SP |
256 | The format of |
257 | .Ar date | |
258 | is the same as that of | |
1227625a SP |
259 | .Xr ctime 3 . |
260 | This option is useful for automated dump scripts that wish to | |
261 | dump over a specific period of time. | |
262 | The | |
263 | .Fl T | |
264 | option is mutually exclusive from the | |
265 | .Fl u | |
266 | option. | |
267 | .It Fl u | |
268 | Update the file | |
8d4197bb | 269 | .Pa __DUMPDATES__ |
1227625a SP |
270 | after a successful dump. |
271 | The format of | |
8d4197bb | 272 | .Pa __DUMPDATES__ |
1227625a SP |
273 | is readable by people, consisting of one |
274 | free format record per line: | |
275 | filesystem name, | |
276 | increment level | |
277 | and | |
278 | .Xr ctime 3 | |
279 | format dump date. | |
280 | There may be only one entry per filesystem at each level. | |
281 | The file | |
8d4197bb | 282 | .Pa __DUMPDATES__ |
1227625a SP |
283 | may be edited to change any of the fields, |
284 | if necessary. | |
285 | .It Fl W | |
286 | .Nm Dump | |
287 | tells the operator what file systems need to be dumped. | |
288 | This information is gleaned from the files | |
8d4197bb | 289 | .Pa __DUMPDATES__ |
1227625a SP |
290 | and |
291 | .Pa /etc/fstab . | |
292 | The | |
293 | .Fl W | |
294 | option causes | |
b45f51d6 | 295 | .Nm |
1227625a | 296 | to print out, for each file system in |
8d4197bb | 297 | .Pa __DUMPDATES__ , |
1227625a SP |
298 | the most recent dump date and level, |
299 | and highlights those file systems that should be dumped. | |
300 | If the | |
301 | .Fl W | |
302 | option is set, all other options are ignored, and | |
b45f51d6 | 303 | .Nm |
1227625a SP |
304 | exits immediately. |
305 | .It Fl w | |
ddd2ef55 SP |
306 | Is like |
307 | .Fl W , | |
308 | but prints only those filesystems which need to be dumped. | |
1227625a SP |
309 | .El |
310 | .Pp | |
311 | .Nm Dump | |
312 | requires operator intervention on these conditions: | |
313 | end of tape, | |
314 | end of dump, | |
315 | tape write error, | |
316 | tape open error or | |
ddd2ef55 | 317 | disk read error (if there is more than a threshold of 32). |
1227625a SP |
318 | In addition to alerting all operators implied by the |
319 | .Fl n | |
320 | key, | |
b45f51d6 | 321 | .Nm |
1227625a SP |
322 | interacts with the operator on |
323 | .Em dump's | |
324 | control terminal at times when | |
b45f51d6 | 325 | .Nm |
1227625a SP |
326 | can no longer proceed, |
327 | or if something is grossly wrong. | |
328 | All questions | |
b45f51d6 | 329 | .Nm |
1227625a SP |
330 | poses |
331 | .Em must | |
332 | be answered by typing | |
333 | .Dq yes | |
334 | or | |
335 | .Dq no , | |
336 | appropriately. | |
337 | .Pp | |
338 | Since making a dump involves a lot of time and effort for full dumps, | |
b45f51d6 | 339 | .Nm |
1227625a SP |
340 | checkpoints itself at the start of each tape volume. |
341 | If writing that volume fails for some reason, | |
b45f51d6 | 342 | .Nm |
1227625a SP |
343 | will, |
344 | with operator permission, | |
345 | restart itself from the checkpoint | |
346 | after the old tape has been rewound and removed, | |
347 | and a new tape has been mounted. | |
348 | .Pp | |
349 | .Nm Dump | |
350 | tells the operator what is going on at periodic intervals, | |
351 | including usually low estimates of the number of blocks to write, | |
352 | the number of tapes it will take, the time to completion, and | |
353 | the time to the tape change. | |
354 | The output is verbose, | |
355 | so that others know that the terminal | |
356 | controlling | |
b45f51d6 | 357 | .Nm |
1227625a SP |
358 | is busy, |
359 | and will be for some time. | |
360 | .Pp | |
361 | In the event of a catastrophic disk event, the time required | |
362 | to restore all the necessary backup tapes or files to disk | |
363 | can be kept to a minimum by staggering the incremental dumps. | |
364 | An efficient method of staggering incremental dumps | |
365 | to minimize the number of tapes follows: | |
366 | .Bl -bullet -offset indent | |
367 | .It | |
368 | Always start with a level 0 backup, for example: | |
369 | .Bd -literal -offset indent | |
8d4197bb | 370 | /sbin/dump -0u -f /dev/st0 /usr/src |
1227625a SP |
371 | .Ed |
372 | .Pp | |
373 | This should be done at set intervals, say once a month or once every two months, | |
374 | and on a set of fresh tapes that is saved forever. | |
375 | .It | |
376 | After a level 0, dumps of active file | |
377 | systems are taken on a daily basis, | |
378 | using a modified Tower of Hanoi algorithm, | |
379 | with this sequence of dump levels: | |
380 | .Bd -literal -offset indent | |
381 | 3 2 5 4 7 6 9 8 9 9 ... | |
382 | .Ed | |
383 | .Pp | |
384 | For the daily dumps, it should be possible to use a fixed number of tapes | |
385 | for each day, used on a weekly basis. | |
386 | Each week, a level 1 dump is taken, and | |
387 | the daily Hanoi sequence repeats beginning with 3. | |
388 | For weekly dumps, another fixed set of tapes per dumped file system is | |
389 | used, also on a cyclical basis. | |
390 | .El | |
391 | .Pp | |
392 | After several months or so, the daily and weekly tapes should get | |
393 | rotated out of the dump cycle and fresh tapes brought in. | |
b45f51d6 SP |
394 | .Sh ENVIRONMENT |
395 | .Bl -tag -width Fl | |
396 | .It Ev TAPE | |
397 | If no -f option was specified, | |
398 | .Nm | |
399 | will use the device specified via | |
400 | .Ev TAPE | |
401 | as the dump device. | |
402 | .Ev TAPE | |
403 | may be of the form | |
404 | .Qq tapename , | |
405 | .Qq host:tapename , | |
406 | or | |
407 | .Qq user@host:tapename . | |
408 | .It Ev RMT | |
409 | The environment variable | |
410 | .Ev RMT | |
411 | will be used to determine the pathname of the remote | |
412 | .Xr rmt 8 | |
413 | program. | |
0c62667d SP |
414 | .It Ev RSH |
415 | .Nm Dump | |
416 | uses the contents of this variable to determine the name of the | |
417 | remote shell command to use when doing remote backups (rsh, ssh etc.). | |
418 | If this variable is not set, | |
419 | .Xr rcmd 3 | |
420 | will be used, but only root will be able to do remote backups. | |
1227625a | 421 | .Sh FILES |
8d4197bb | 422 | .Bl -tag -width __DUMPDATES__ -compact |
ddd2ef55 | 423 | .It Pa /dev/st0 |
1227625a | 424 | default tape unit to dump to |
8d4197bb | 425 | .It Pa __DUMPDATES__ |
1227625a SP |
426 | dump date records |
427 | .It Pa /etc/fstab | |
428 | dump table: file systems and frequency | |
429 | .It Pa /etc/group | |
430 | to find group | |
431 | .Em operator | |
432 | .El | |
433 | .Sh SEE ALSO | |
b45f51d6 | 434 | .Xr fstab 5 , |
1227625a | 435 | .Xr restore 8 , |
b45f51d6 | 436 | .Xr rmt 8 |
1227625a SP |
437 | .Sh DIAGNOSTICS |
438 | Many, and verbose. | |
439 | .Pp | |
ddd2ef55 SP |
440 | .Nm Dump |
441 | exits with zero status on success. | |
1227625a SP |
442 | Startup errors are indicated with an exit code of 1; |
443 | abnormal termination is indicated with an exit code of 3. | |
444 | .Sh BUGS | |
ddd2ef55 SP |
445 | It might be considered a bug that this version of dump can only handle ext2 |
446 | filesystems. Specifically, it does not work with FAT filesystems. | |
447 | .Pp | |
448 | Fewer than 32 read errors on the filesystem are ignored. If noticing | |
449 | read errors is important, the output from dump can be parsed to look for lines | |
450 | that contain the text 'read error'. | |
1227625a SP |
451 | .Pp |
452 | Each reel requires a new process, so parent processes for | |
453 | reels already written just hang around until the entire tape | |
454 | is written. | |
455 | .Pp | |
456 | .Nm Dump | |
457 | with the | |
458 | .Fl W | |
459 | or | |
460 | .Fl w | |
ddd2ef55 | 461 | option does not report filesystems that have never been recorded |
1227625a | 462 | in |
8d4197bb | 463 | .Pa __DUMPDATES__ , |
1227625a SP |
464 | even if listed in |
465 | .Pa /etc/fstab . | |
466 | .Pp | |
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 . |