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