home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Frozen Fish 1: Amiga
/
FrozenFish-Apr94.iso
/
bbs
/
alib
/
d1xx
/
d168
/
dillonstuff.lha
/
doc
/
backup.doc
next >
Wrap
Text File
|
1988-11-22
|
12KB
|
334 lines
BACKUP.DOC
V2.01
3 November 1988
(c)Copyright 1988, Matthew Dillon, All Rights Reserved
Freely Distributable for non-profit only
(this is the same document as backup.doc v2.00)
(I)
OVERVIEW
Backup and Restore (same executable, just renamed) allow you to backup
any directory tree with optional compression, and later extract all
or part of the tree. The protection, date, and file comment is saved
with each file.
SEE SECTION (6), FLOPICAL BACKUP, for options pertaining to backing
up directly to floppies.
LIMITATIONS: When using -c (compress), the entire result of the
compressed file must fit into memory. Any files (after compression,
if any) larger than a floppy when backing up to floppies cannot be
handled yet.
(I)
INSTALLATION
Copy the (1) executable to your C: directory twice, naming one
'Backup' and the other 'Restore'. The program looks at the first
character of its name to determine whether the default is to backup
or restore. If you don't have the space, all is not lost ... you
simply need to specify backup or restore explicitly with the options
(-b or -r).
(2)
EXOTIC FEATURES
Backup does not write directory trees which contain no files. Thus,
when doing incremental backups on a large hard disk, the structure of
directory sub-trees which have no new files in them will not be
written. So if you only modified a couple of files since the last
backup, there won't be 50K of structure-overhead.
You can specify compression (-c) in the backup. All files are
compressed (there must be enough RAM to hold the largest file in
its compressed state). Those files which would turn out larger after
compression than before are NOT compressed. Certain file suffixes
cause the compression attempt to be skipped entire: .Z, .ARC, and .ZOO
files
IT IS SUGGESTED YOU USE THE COMPRESSION FEATURE EVEN THOUGH IT
SLOWS DOWN THE BACKUP. The resulting backup file will be
significantly reduced in size. Even though a full backup will
take a long time, you only do that every once in a while and
as incremental backups are shorter, they take much less time.
'Pick' patterns are supported (backup only paths which match the
specified patterns), and 'Discard' patterns are supported (do not backup
paths which match the specified patterns). Discard patterns override
Pick patterns.
(3)
OPTIONS
Here is a list of Backup/Restore options.
-A ARCHIVE. (Backup) Causes the archive bit to be cleared
on files being backed up. (Protection bit -> 1)
(Restore): If specified, the archive bit is cleared on
restored files. Otherwise the archive bit will be set,
causing the files to be backed up again on the next
incremental backup.
-U UPDATE. (Backup) Restricts the backup to only those files
which have the archive bit set. (Protection bit == 0)
-b BACKUP (this is the default if the first character in
the executable is a 'b')
-r RESTORE (this is the default if the first character in
the executable is an 'r')
-a APPEND (Backup) Cause the backup to be appended to
the specified (-o) file rather than overwriting it. Useful
for incremental backups.
-c COMPRESS (Backup) Cause all files to be compressed, if
possible. Restore automatically decompresses files which
have been compressed. This is the same algorithm used
in the UNIX compress command.
NO COMPRESSION WILL EVEN BE ATTEMPED ON FILES WITH THE
FOLLOWING SUFFIXES: .Z .ARC .ZOO
-f[#kb] Turn on backup fragmentation and specify the fragment size,
default 800K (for backing up to floppies). NOTE: Currently,
files larger than the fragment size cannot be backed up!
Note: a suffix is added to the file name w/ a sequence
number, but each fragment is a complete backup file unto
itself and may be restored out of order.
Any numerical value specified is in K, i.e. -f800 == 800K
-Fvol: Add the volume (df0:, df1:, etc..) to the drive sequencing
list. The idea is to specify several -F options which are
cycled through and prefix each fragment. This also
enables prompting... the program prompts whenever it
switches to the next fragment.
If -F is not specified at all and -f is, no prompting
occurs.
-s Only display directories as we go along
-S Silent... don't display files or directories
-v Verbose... display those files which will NOT be backed
up as well as those that will.
-l/-t (both do the same thing). (Restore) LIST the archive
only, do not do an actual restore.
-T (Restore) Restore ONLY the timestamp, comment, and
protection fields. This is incredibly useful to
restore timestamp information to files that already
exist. NO files are overwritten or created on the
destination volume(s).
-n# (Backup) Sets the output buffer size, in KILOBYTES.
Default is 64.
-pPAT (Backup) Restrict the backup to files which match the
specified pattern. Up to 32 patterns may be specified.
(Restore) Extract only those files which match the
specified pattern.
NOTE: The pattern is matched with the COMPLETE PATH as
shown in the -t option. '*' and '?' wildcarding is supported
-dPAT (Backup) Do not backup files which match the specified
pattern. Up to 32 patterns may be specified.
(Restore) Do not extract files which match the specified
pattern.
NOTE: The pattern is matched with the COMPLETE PATH as
shown in the -t option. '*' and '?' wildcarding is supported.
-oFILE (Backup) Specify the OUTPUT FILE for a backup. IF NO
OUTPUT FILE IS SPECIFIED, NO OUTPUT FILE IS CREATED. I.E.
you can take a second pass just to clear the archive bit.
(Restore) Specify the directory to place the restored
directory tree. (This overrides the volume the backup
was saved from). If no directory specified, the original
volume used in the backup will be restored to. If no
volume was specified in the backup but rather a relative
path was, the restore will be relative to the current
directory.
(4)
STANDARD METHOD OF BACKING UP
Note that with combinations of -o, -A, and -U, you have many choices
available to you when backing up files. For hard disks, backups are
normally done in two phases:
-Once a month do a complete backup of your hard disk
-Every day do a much smaller 'incremental' backup which backs
up only those files which have been modified/created since the
last backup.
The master backup, plus the N incremental backups together
reconstruct your disk up to the moment. After a while the
number of incremental backups will be so great (and messy),
that you will want to do another complete backup and start
again.
IN THIS WAY, the COMPRESS option can be put to good use. The
incremental backups are usually small, and can be compressed
relatively quickly. The complete backup should also be compressed
(-c in case you forgot) though this will take a much longer time...
but then again the complete backup is not done every day.
UPDATING THE ARCHIVE BIT ON THE FLY VERSES TAKING A SECOND PASS.
Updating the archive bit involves writing to the disk. For complete
safety you probably do NOT want to update the archive bit while you
are backing up the files in question. The following two-pass method
works well:
(COMPLETE BACKUP)
backup -c -d"*.o" volume: -ooutput
backup -A volume:
(INCREMENTAL BACKUP)
backup -U -c -d"*.o" volume: -ooutput
backup -A volume:
The -d option is saying "Don't backup all those object modules I left
laying around".
The first command backs up only those files which have be modified
or created but does NOT update the archive bit. The second command
updates the archive bit without doing anything else (no output file
is specified and thus none is created). The second command goes
extremely quickly since files are not actually read.
For your INCREMENTAL backups, risking modifying the archive bit while
backing the files up is feasible, Since very few files will be
backed up (comparitively):
backup -a -UA -c -d"*.o" volume: -ooutput
In this case I use the -a option (append). You might NOT want to do
this and save the incremental backups as separate files.
(5)
STANDARD METHOD OF RESTORING
Restoring a backup to the original volume: (Restore or Backup -r)
NOTE: If the -A option is specified, restored files will have
their Archive bit cleared. If -A is NOT specified, files will have
their archive bit set and will thus be re-backed up on the next
incremental backup.
NOTE: When restoring files, remember that the incremental backups
will have the newest modifications and should be specified LAST:
Restore completebkfile incr1 incr2 incr3....
Partial Restore using -p:
Restore -pstuffIWant bkfile1 bkfile2 bkfile3...
ARCHIVE LISTING:
Restore -t bkfile1 bkfile2....
NOTE: Two 'sizes' are given in the listing. The first
is the # bytes the file takes up in the archive, the
second is the actual size of the file.
(6)
FLOPICAL BACKUP AND RESTORE
There are two problems associated with floppy backup and restore:
(1) A single file on the HD may be two big for a single floppy
(2) It may take a lot of floppies to backup an HD
Additionaly, one wants the following conveniences:
(1) Be able to backup to a logical progression of (floppy) drives,
inserted blank disks in while the system is working on other
drives.
(2) Be able to restore the same way
(3) If one or more floppies is destroyed be able to restore from the
remaining floppies.
Currently, you can specify which devices to cycle through
with the -F option (-Fdf0: -Fdf1: -Fdf2:), but BACKUP will
always prompt you before continuing. Since it uses the
console device, you can specify the yes response as many
times as you have floppies in ready drives.
Currently, files larger than the specified -f size (800K
default) cannot be handled if using -f/-F ... However, by
enabling compression larger files can still fit.
Currently, the entire compressed result of a file must be
able to fit into memory during the backup.
***
BACKUP. Specify the -f option and then -Fvol: for each floppy
drive (in the order you want) to backup to. Example:
-f -Fdf0: -Fdf1:
(Also keep in mind all the options listed in sections (3), (4), & (5))
Currently, you must have PRE-FORMATTED all your backup disks since the
backup/restore works through normal files. The system will prompt for
readyness every time it completes a section.
The backup process never deletes files, only creates or overwrites
them. Thus, accidently sticking in a non-blank or incorrect backup
disk will probably result in a disk-full requester.... not Fatal, though
inconvenient.
You must still specify the -o option to name the output file, which will
be prefixed with the next -F volume in sequence and suffixed with the
sequence number. (.nn) The disk labels for your floppies may all be
the same.
EXAMPLE:
backup -c -d"*.o" -f -Fdf0: -Fdf1: -Fdf2: volume: -oxxbak
backup -A volume:
NOTE: You do NOT specifiy a volume prefix in the -o option ..
those specified by -F are automatically cycled through as the
prefix.
* If your hard disk has enough space on it I suggest you backup to an
alternate partition using only -f (not -F which forces user prompts),
then copy the chunks to floppies after the entire backup has
completed.
***
RESTORE. Restore works the same way. EACH DISK IS INDEPENDANT! You
may insert disks in any order to be restored. Simply execute the
standard restore command in section (5) for each floppy.
Destroyed disks may be skipped. Currently, no support for partially
restored disks exists... i.e. the archive has be clean.