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