File: faq.html

package info (click to toggle)
flexbackup 1.2.1-6.4
  • links: PTS
  • area: main
  • in suites: bullseye, buster, sid
  • size: 436 kB
  • sloc: perl: 4,445; sh: 451; makefile: 66
file content (444 lines) | stat: -rw-r--r-- 24,886 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html401/transitional.dtd">
<HTML> <HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-8859-1">
<TITLE>flexbackup FAQ</TITLE>
<LINK TYPE="text/css" REL="stylesheet" HREF="style.css">
</HEAD>

<H1>flexbackup frequently-asked questions</H1>

<P>Suggestions/additions welcome<BR>
<p><i>FAQ Revised: Friday 10 October 2003 11:26:37</i></p>
<hr><h2>Table of Contents</h2>
<dl>
<dt><b>1. Configuration</b></dt>
<dd><ul>
<li><a href="#Configuration0">1.1. How do I upgrade from 1.0.x to 1.2.x?</a></li>
<li><a href="#Configuration1">1.2. Why won't my exclude or prune expressions work?</a></li>
<li><a href="#Configuration2">1.3. How can I avoid running backups or remote shells as root?</a></li>
<li><a href="#Configuration3">1.4. On my system, "tar" is not GNU tar but is the vendor's "tar". GNU tar is
installed as "gtar".  On my system, "dump" is "ufsdump".</a></li>
<li><a href="#Configuration4">1.5. How can I back up Windows systems?</a></li>
<li><a href="#Configuration5">1.6. Does the to-disk backup mode use single archive files or directory tree copies
of files?</a></li>
<li><a href="#Configuration6">1.7. How do I deal with spaces in set or prune directory specifications?</a></li>
<li><a href="#Configuration7">1.8. Does flexbackup work with autoloaders / mtx?</a></li>
</ul></dd>
<dt><b>2. Backup</b></dt>
<dd><ul>
<li><a href="#Backup0">2.1. Can you explain numeric dump levels?</a></li>
<li><a href="#Backup1">2.2. Do you support multi-tape archives?</a></li>
<li><a href="#Backup2">2.3. I'm backing up to files on disk -- How can I get filenames to not have
timestamps in them?</a></li>
<li><a href="#Backup3">2.4. What is the maxiumum size of the archives flexbackup can produce?</a></li>
</ul></dd>
<dt><b>3. Recovery / Extraction</b></dt>
<dd><ul>
<li><a href="#Recovery / Extraction0">3.1. How do I extract only certain files in an archive rather than the
whole thing?</a></li>
<li><a href="#Recovery / Extraction1">3.2. How do I find out which archive(s) contain a certain file?</a></li>
<li><a href="#Recovery / Extraction2">3.3. The disk totally died.  How do I get flexbackup's archives off the
tapes on a machine without flexbackup or even perl installed?</a></li>
<li><a href="#Recovery / Extraction3">3.4. I don't have the index files! (disk died, different machine, etc.)</a></li>
</ul></dd>
<dt><b>4. Common problems</b></dt>
<dd><ul>
<li><a href="#Common problems0">4.1. I get I/O errors or other errors from my tape drive.</a></li>
<li><a href="#Common problems1">4.2. Backups seem to work ok, but I can't get extracting/listing to work.</a></li>
<li><a href="#Common problems2">4.3. How do I get remote backups over ssh to work without prompting for a password?</a></li>
<li><a href="#Common problems3">4.4. I keep getting only one backup per tape when I do "-set all"!</a></li>
<li><a href="#Common problems4">4.5. 'buffer' complains that it can't run successfully or that it doesn't
have enough shared memory.</a></li>
<li><a href="#Common problems5">4.6. When using -newtape or -erase, the tape drive sits there forever making
noise and nothing happens on the screen</a></li>
<li><a href="#Common problems6">4.7. My "mt" or tape drive doesn't support operation xxxx.</a></li>
<li><a href="#Common problems7">4.8. Flexbackup caused my system to hang!</a></li>
<li><a href="#Common problems8">4.9. The backup looks like it works ok, but flexbackup complains of an error
at the end of the archive, then exits.</a></li>
<li><a href="#Common problems9">4.10. I get an error from the backup due to files moving/changing/being deleted
during the backup</a></li>
</ul></dd>
<dt><b>5. Misc</b></dt>
<dd><ul>
<li><a href="#Misc0">5.1. How does the "packaging system delta" (or "-pkgdelta") feature work?</a></li>
<li><a href="#Misc1">5.2. What exactly is the "-wday" switch for?</a></li>
<li><a href="#Misc2">5.3. How can I tell flexbackup to read from stdin or backup to stdout?</a></li>
<li><a href="#Misc3">5.4. Why keep the table of contents db on disk rather than on the tape?</a></li>
<li><a href="#Misc4">5.5. This index stuff is a useless mess/I can't get it to work!</a></li>
</ul></dd>
</dl>
<hr><h2>1. Configuration</h2>
<dl>
<dt><b><a name="Configuration0">1.1. How do I upgrade from 1.0.x to 1.2.x?</a></b></dt>
<dd><B>Use the new default config file, then tweak as needed</B>.  Specific things
that changed:

<OL>
<LI>Filesystems: the filesystem spec now allows an arbitrary "backup set"
concept. In the config file, you can do things like:<PRE>
      $set{'tag1'} = "/dir1 /dir2 ...";
      $set{'tag2'} = "/dir3 host:/dir4 ...";</PRE>
<LI>The commandline -fs switch became:
<UL>
<LI>"-dir &lt;dir&gt;" backs up one directory tree (old "-fs &lt;dir&gt;")
<LI>"-set &lt;tag&gt;" backs up a named set.  Useful new feature.
<LI>"-set all" acts like old "-fs all".  If using tapes & level 0, each set
is a different tape (acts like the old numeric index to @filesystems)
</UL>

<LI>mt blocksize: old configuration boolean $mt_var_blksize is now an integer, $mt_blocksize (in bytes).
<UL>
<LI>Set to 0 for variable blocksize - old "true" value
<LI>Comment out or set to "$blksize * 1024" for old "false" value.
<LI>Or use some other value, like "512".  This wasn't possible before.
</UL>

<LI>"-extract -files" turned into "-extract -onefile" or "-extract
-flist" (functionality should be more clear now).

</OL><br><br></dd>
<dt><b><a name="Configuration1">1.2. Why won't my exclude or prune expressions work?</a></b></dt>
<dd>Use regular expressions, not wild cards (aka globs).  See a perl, sed,
or grep reference, or "man 7 regex".  Simplistically, you probably mean to
say ".*" instead of "*", and ".?" instead of "?".  Also, leave OFF the
first part of a path that is the filesystem you are archiving; the exclude
expressions only match sub-paths of the backup directory.

<P>You can test exclusion, levels, pruning, and package deltas by
using "-type filelist". This writes a text file listing all files that
would have been backed up into your current working directory.

<P>You can also test to see if your expression matches what you want to
exclude by:<BR><BR>
<CODE>cd &lt;topdir&gt;; find . -regex "&lt;expression&gt;"</CODE><br><br></dd>
<dt><b><a name="Configuration2">1.3. How can I avoid running backups or remote shells as root?</a></b></dt>
<dd>You can do this with 'sudo'.
<OL>
<LI>Set up a passphraseless ssh key for a user to run the backups.
<LI>Set <CODE>$path{command} = 'sudo command';</CODE> in the config file.
    Do this for all commands that will need privilege (find, afio/tar/etc)
<LI>Set up an /etc/sudoers file with something like this:<BR><BR>
<CODE>
Cmnd_Alias BACKUP = /usr/bin/afio, /usr/bin/find<BR>
backupuser ALL = NOPASSWD: BACKUP</CODE>
</OL><br><br></dd>
<dt><b><a name="Configuration3">1.4. On my system, "tar" is not GNU tar but is the vendor's "tar". GNU tar is
installed as "gtar".  On my system, "dump" is "ufsdump".</a></b></dt>
<dd>Use the path overrides at the end of the config file. A couple examples
are given there, such as: <CODE>$path{'dump'} = 'ufsdump';</CODE>.  You can
use this mechanism to override paths or just change command names.<br><br></dd>
<dt><b><a name="Configuration4">1.5. How can I back up Windows systems?</a></b></dt>
<dd>There are currently two ways:
<UL>
<LI>Use "smbmount" to mount the windows share on a directory and back that
up just like any other directory
<LI>flexbackup runs natively under cygwin
</UL>

<P>In the future we might add a way to set up "smbtar" or something similar...<br><br></dd>
<dt><b><a name="Configuration5">1.6. Does the to-disk backup mode use single archive files or directory tree copies
of files?</a></b></dt>
<dd>You can do either.  The "copy" or "rsync" types will do a tree mirror of the selected
files, other types make single-file archives in the <CODE>$device</CODE> dir.

<P>Note that archive-to-disk with remote directories (<CODE>$device =
host:/path/to/dir</CODE>) is not currently possible.  You need to either run the
backup from the machine with the disk, or use NFS.<br><br></dd>
<dt><b><a name="Configuration6">1.7. How do I deal with spaces in set or prune directory specifications?</a></b></dt>
<dd>Good question, since these variables are set up as space-separated
lists. Just enclose each item in single or double quotes:<BR><BR>
<CODE>$set{'backup'} = "'/path/file system 1' '/path/file system 2'";</CODE><br><br></dd>
<dt><b><a name="Configuration7">1.8. Does flexbackup work with autoloaders / mtx?</a></b></dt>
<dd>Not currently.  If you want help add it, let us know.
See also 2.2 below.<br><br></dd>
</dl>
<hr><h2>2. Backup</h2>
<dl>
<dt><b><a name="Backup0">2.1. Can you explain numeric dump levels?</a></b></dt>
<dd>Level 0 gets everything.  For 1 or higher, files that have been changed
since the last backup at a <B>lower</B> level are archived. For
instance, if a level 2 backup was done on Monday, followed by a level 4
backup on Tuesday, a subsequent level 3 backup on Wednesday would contain
all files modified or added since the level 2 (Monday) backup.

<P>See also <A HREF="http://docs.sun.com/db/doc/805-7228/6j6q7uf18?a=view">these sun
docs</A> for an example with some pictures.

<P>Traditional Unix 'dump' behavior only allows levels 0-9; flexbackup
removes this limit if you are using any of the non-dump archive formats.

<P>For those people coming from other platforms that are not used to
dump-style numeric levels, the latest versions of flexbackup have added
<CODE>-full</CODE>, <CODE>-differential</CODE>, <CODE>-incremental</CODE>
that get translated into appropriate dump-style level numbers.
Definitions:<UL>
<LI>full: everything (duh!)
<LI>differential: only files that have been changed or added since the last full backup
<LI>incremental: only the files that have changed or been added to a system since doing the last backup (of any type)
</UL>
<P>These are simply aliased to numeric levels: full = 0, differential = 1, and
incremental = (latest backup + 1)<br><br></dd>
<dt><b><a name="Backup1">2.2. Do you support multi-tape archives?</a></b></dt>
<dd>If you split filesystems/directories to be in different "sets", each set
will go on a different tape for full backups (you'll be prompted).

<P>As of now, having <B>one</B> directory archive span multiple tapes is not supported.
True, some of the archiver programs can deal with end-of media if and
only if <B>they</B> are writing directly to the device, but it can't be
done in a shell pipeline, or in any kind of generic fashion. For now, split
the directory up into workable portions, use larger media, or backup to
disk...

<P>We need a program like "buffer", but that also deals with the volume end
detection &amp; media change prompting, has configuraable "new tape"
scripts, etc.

<P>Version 1.2.1 has basic support for using mbuffer with multivolumes.
Please try it out and let me know.<br><br></dd>
<dt><b><a name="Backup2">2.3. I'm backing up to files on disk -- How can I get filenames to not have
timestamps in them?</a></b></dt>
<dd>Set <CODE>$staticfiles</CODE> to true in the config file. Archives will
then have names such as "etc.3.dump.gz" rather than something like
"home.0.200301212305.afio-bz2". There is a similar parameter for the log
files, by the way.<br><br></dd>
<dt><b><a name="Backup3">2.4. What is the maxiumum size of the archives flexbackup can produce?</a></b></dt>
<dd>This is a limitation of the archive program, tape driver, underlying
filesystem, OS, or specific compilation of perl - nothing in flexbackup
controls that.

<P>Some older programs/systems barf at 2GB files -- anything recent should
deal with large files no problem, using standard APIs.

<P>If you are using "buffer" be aware that you need to compile with extra
flags, or patch the 1.19 version to handle >2GB files. (The RPMS linked to
from this site have been)

<P>See also <A HREF="http://www.suse.de/~aj/linux_lfs.html">Large File
Support in Linux</A> or <A
HREF="http://ftp.sas.com/standards/large.file/x_open.20Mar96.html">Large
file size changes to the single Unix spec</A> for more info and hints on
how to fix things if you need to recompile something.<br><br></dd>
</dl>
<hr><h2>3. Recovery / Extraction</h2>
<dl>
<dt><b><a name="Recovery / Extraction0">3.1. How do I extract only certain files in an archive rather than the
whole thing?</a></b></dt>
<dd>Use the -flist or -onefile switches.

<P>To quickly extract just a single file, use "-extract -onefile path/to/my/file",
giving the path from the archive.

<P>To extract a list of multiple files, put them into a text file, for
instance "restorelist", then use "-extract -flist restorelist".  The format
is one line per pathname, using the path of the file in the archive.  Note
if you are using afio with compression you need to append ".z" to
filenames for any compressed files (depends on threshold and exclusion patterns).<br><br></dd>
<dt><b><a name="Recovery / Extraction1">3.2. How do I find out which archive(s) contain a certain file?</a></b></dt>
<dd>If you don't know in which archive to find a certain file, look at the
log files.  As long as you have verbose turned on (default), you can just
'zgrep filename /var/log/flexbackup/*.gz', and that works pretty well.<br><br></dd>
<dt><b><a name="Recovery / Extraction2">3.3. The disk totally died.  How do I get flexbackup's archives off the
tapes on a machine without flexbackup or even perl installed?</a></b></dt>
<dd>Something like this, if using compression with tar/cpio/dump:<BR><BR>
<CODE>dd if=/dev/tapedevice bs=10k | gzip -dc | tar xvf -</CODE><BR><BR>
replace "tar xvf -" with "restore -i -f -" or whatever. Skip the gzip pipe
if you aren't using compression.  afio is a bit more complex, you might
need something like:<BR><BR><CODE>afio -i -k -x -P bzip2 -Q -d -Z -v</CODE>
<BR><BR>Check the manpages for the archive utility you used...<br><br></dd>
<dt><b><a name="Recovery / Extraction3">3.4. I don't have the index files! (disk died, different machine, etc.)</a></b></dt>
<dd>This is OK, you can still extract/restore/etc. The index files are for
human convenience only.  Just skip the first file on the tape, it's a
simple "tag" text file.  The rest of the tape is your normal archives.<br><br></dd>
</dl>
<hr><h2>4. Common problems</h2>
<dl>
<dt><b><a name="Common problems0">4.1. I get I/O errors or other errors from my tape drive.</a></b></dt>
<dd>Run this: <CODE>flexbackup -test-tape-drive</CODE>.  It writes a couple
small files to the tape, then reads & diffs them.  This will flush out any
problems with parameters like blocking, filemarks, and padding; or issues
with the tape drive or driver itself.

<P>If it fails, try these one at a time:<OL>
<LI>If you are using buffering, turn it off (<CODE>$buffer='false'</CODE>) until you can get things working without it.
<LI>Change the block size parameter (<CODE>$blksize</CODE>) in the configuration file.  The default is 10k, but some tape drives like 32k or 64k much better.
<LI>Try setting <CODE>$pad_blocks</CODE> to false
<LI>Switch the setting of <CODE>$mt_blocksize</CODE>.
<LI>Try with with <CODE>$indexes</CODE> set to false
</OL>

<P>If you are using an IDE tape drive under Linux, and are still having
trouble, you might also try the 'ide-scsi' layer with the 'st' module, and
treating the thing like a SCSI tape - I've had more success that way.

<P>You can also just try writing/reading stuff straight from the drive with
an archiver and dd (to factor flexbackup out of the loop), although that's what the
<CODE>-test-tape-drive</CODE> switch tries to do.  If you can get that working,
but flexbackup still seems to malfunction, let us know.  Try things like:
(The example below uses afio to test, tar/cpio/others will be different)

<PRE>
  # Backup two dirs
  mt -f /dev/tape setblk 32768
  mt -f /dev/tape rewind
  mt -f /dev/tape erase
  find /dir1 -print | afio -o -z -v -b 32k - | dd ibs=32k obs=32k of=/dev/tape
  find /dir2 -print | afio -o -z -v -b 32k - | dd ibs=32k obs=32k of=/dev/tape

  # List
  mt -f /dev/tape rewind
  dd ibs=32k obs=32k if=/dev/tape | afio -t -z -v -b 32k -
  dd ibs=32k obs=32k if=/dev/tape | afio -t -z -v -b 32k -
</PRE><br><br></dd>
<dt><b><a name="Common problems1">4.2. Backups seem to work ok, but I can't get extracting/listing to work.</a></b></dt>
<dd>Usually a matter of tape positioning, or else is a tape drive parameter
problem as talked about above.  For positioning, use 'mt rewind; mt fsf
&lt;n&gt;' to get to the right file number on the tape, or use the "-num"
switch with "-list|extract|compare|restore" to have flexbackup do it for
you.  If you are using flexbackup's indexes, remember that file number 0 is
a header used for the index itself.<br><br></dd>
<dt><b><a name="Common problems2">4.3. How do I get remote backups over ssh to work without prompting for a password?</a></b></dt>
<dd>For rsh, use .rhosts or hosts.equiv. But you really should NOT be using
rsh.

<P>If you are using ssh and are having a problem with it asking for a
password, then you don't have a passphrase-less authorized key set up, your
RSAAuthentication parameters are incorrect, or you have some other
public/private key problem. Section 7.2.2 of the ssh FAQ might
help:<BR><BR> <A
HREF="http://www.onsight.com/faq/ssh/ssh-faq.html">http://www.onsight.com/faq/ssh/ssh-faq.html</A><BR><BR>
In a nutshell the value of your <CODE>~/.ssh/identity.pub</CODE> needs to
be present in your <CODE>~/.ssh/authorized_keys</CODE> file for RSA
authentication to work. For root accounts you might also need to
put<BR><BR> <CODE>PermitRootLogin yes</CODE><BR><BR> in your sshd_config
file, as root is treated with more care than normal user accounts. Note:
you might choose without-password or forced-commands-only instead of yes
for more security. See your ssh(1) and sshd(1) man pages.

<P>If you do not want to use passphrase-less ssh keys with root logins, See
the section on use with "sudo".  (Or else sit at the terminal and type
passwords during the backups if you *really* want to...)<br><br></dd>
<dt><b><a name="Common problems3">4.4. I keep getting only one backup per tape when I do "-set all"!</a></b></dt>
<dd>Use the non-rewinding device.<br><br></dd>
<dt><b><a name="Common problems4">4.5. 'buffer' complains that it can't run successfully or that it doesn't
have enough shared memory.</a></b></dt>
<dd>Set <CODE>$buffer_megs</CODE> to a lower value and try again.  I usually
run with it set somewhere between 5-20MB.

<P>On FreeBSD, SysV shared memory can run low using the GENERIC kernel at
its default value (especially if you are running something like GNOME). You
can modify your kernel file and change the line<BR><BR>
<CODE>options SHMMAXPGS=2048</CODE>
<P>To something really big. You can also change this dynamically at startup by
putting<BR><BR>
<CODE>kern.ipc.shmmax={large integer}</CODE>
<P>in /etc/sysctl.conf. Other BSD's will have very similar mechanisms.<br><br></dd>
<dt><b><a name="Common problems5">4.6. When using -newtape or -erase, the tape drive sits there forever making
noise and nothing happens on the screen</a></b></dt>
<dd>Some types of tape drives/drivers take an extremely long time to do an
"mt erase" operation, or its unnecessary.  If you suspect this is the case,
check to see if "mt erase" process is running. In these cases, you can set
the config variable <CODE>$erase_rewind_only</CODE> to true - then an
"erase" operation becomes just a rewind.  If an archive is then written,
filemarks and tape end-of-data should work fine.

<P>Also, this hang can be caused by incorrect tape drive parameters on some
systems.  Try "flexbackup -test-tape-drive".  If it hangs, and there is a dd
or buffer process continuously running, kill it and adjust blocksizes and/or
padding.<br><br></dd>
<dt><b><a name="Common problems6">4.7. My "mt" or tape drive doesn't support operation xxxx.</a></b></dt>
<dd>mt commands definitely vary greatly from platform to platform.  We try
to pick the best default, but it won't be right for everyone. To override mt operation
'xxxx', just put $mt{'xxxx'} = 'yyyy' in the config (see the comments
near the end).  For instance, to make flexbackup use "mt rdspos" instead of
"mt rdhpos, use: <BR><BR>
<CODE> $mt{'rdhpos'} = 'rdspos';</CODE><br><br></dd>
<dt><b><a name="Common problems7">4.8. Flexbackup caused my system to hang!</a></b></dt>
<dd>No it didn't.  Give me a break, it's a script.  If you are asking this
question most likely your tape driver lost its mind and hung the system
somehow.<br><br></dd>
<dt><b><a name="Common problems8">4.9. The backup looks like it works ok, but flexbackup complains of an error
at the end of the archive, then exits.</a></b></dt>
<dd>If flexbackup detects a non-zero exit status for any command in the
pipeline, it will stop. Something probably happened further up in the log
that caused the archive or buffering program to exit with an error status.
Look over the log again, or run with "-d verbose=false" to turn off the
printing of filenames to make it more obvious.  See also the next question.<br><br></dd>
<dt><b><a name="Common problems9">4.10. I get an error from the backup due to files moving/changing/being deleted
during the backup</a></b></dt>
<dd>You really shouldn't be doing that!

<P>If flexbackup detects a non-zero exit status for any command in the
pipeline, it will stop.  You can override this with the "--ignore-errors"
switch, but then it will just blindly continue on such cases.  You have been
warned.

<P>Some archivers are more picky than others.  You can try switching the
archive type.

<P>If it is something like a SQL database data file causing the problem, you
should dump the database to a secondary location and back THAT data up.
(See the mysqldump command, for instance).<br><br></dd>
</dl>
<hr><h2>5. Misc</h2>
<dl>
<dt><b><a name="Misc0">5.1. How does the "packaging system delta" (or "-pkgdelta") feature work?</a></b></dt>
<dd>When you have OS CD's sitting around, and/or you know darn well that 90%
of the non-user, non-data files on your system you can get off the 'net
easily, there is no need to back up "stock" files.

<P>Flexbackup can use a "package delta" mode that cuts down the number of files
to be archived by basically doing the following:
<OL>
<LI>List the files in the directory/filesystem to be backed up, using the normal
    level &amp; timstamp mechanism
<LI>Subtract any files that are "owned" by packages.
<LI>Add back any package files modified from the distributed version (optional)
<LI>Backup the files in the list.
</OL>

<P>It was orginally intended for use with RPM-based systems ("-pkgdelta
rpm").  Initial support for FreeBSD packages is included ("-pkgdelta
freebsd"), although there the "base" files aren't part of package so they
can't be excluded.

<P>If someone knows how to do the equivalent things for
.deb packages or others, let me know and we can add it.<br><br></dd>
<dt><b><a name="Misc1">5.2. What exactly is the "-wday" switch for?</a></b></dt>
<dd>To help cron do things like once-a-month, certain day of the week
jobs.  With crontab fields, you can easily set up something to run
on certain day(s) of the week, or on certain day(s) of the month.

<P>Now, tell me you how to set up a cron job to run once a month on the first
Sunday only.... you can't do it.

<P>The "-wday" flag tells flexbackup to just exit if the current day of the
week does not match the flag.  Now, to fulfill the above requirement, you
add a cron entry like:
<PRE>
   0 3 1-7 * * flexbackup -wday 7 -set all ....
</PRE>
Which will run at 3:00AM on the first Sunday of every month.<br><br></dd>
<dt><b><a name="Misc2">5.3. How can I tell flexbackup to read from stdin or backup to stdout?</a></b></dt>
<dd>See the "-pipe" switch.  Only lets you do one directory at a time,
obviously. You can use this to interact with other programs in a pipeline.<br><br></dd>
<dt><b><a name="Misc3">5.4. Why keep the table of contents db on disk rather than on the tape?</a></b></dt>
<dd><UL>
<LI>We don't know the table size ahead of time unless we use a hard-limited reserved size.
<LI>Updating the db at the beginning of the tape will add tape-travel overhead for every backup.
<LI>a backup->rewind->write start of tape sequence will lose the rest of the contents past the first file unless we start to play filemark tricks.
</UL><br><br></dd>
<dt><b><a name="Misc4">5.5. This index stuff is a useless mess/I can't get it to work!</a></b></dt>
<dd>It isn't necessary if you don't like it. Set <CODE>$indexes =
'false';</CODE> in the config file, and just use written labels on the
tapes...<br><br></dd>
</dl>
<HR>

<ADDRESS><A HREF="mailto:flexbackup-help@lists.sourceforge.net">flexbackup-help at lists dot sourceforge dot net</A></ADDRESS>

<P>
<I>FAQ compilation thanks to <A HREF="http://www.makefaq.org">makefaq</A></I>

</BODY>
</HTML>