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