BackMan ******* BackMan The Backup System User's Manual Copyright © 1995-98 Flavio Stanchina. Permission is granted to make and distribute verbatim copies of this file, and to copy and distribute translations into another language, provided the copyright notice and this permission notice are preserved in all copies. This manual has been formatted by `makeinfo'. Introduction ************ A very simple question like "What is BackMan?" has a very simple answer: "More than a simple backup program". But what's a backup program? If you have an hard disk, probably you know what we're talking about. If you don't have it, please consider such an upgrade for your Amiga! Finally, if you have an hard disk but you don't know what a backup is, please continue reading: maybe you will be surprised... When your hard disk is storing a vast amount of data, you are interested in its integrity. But, you know, hard disks are subject to failures (well, luckily not so often) and small accidents caused by users' mistakes, and in accordance to Murphy's law(1) hard disks' crashes come always in the worst moments. But you can save your data, and thus your money, by making a copy (we'll say making a backup or backing up) on floppy disks, removable devices, tapes, etc., which will then be stored in a safe place. Such backups should be done frequently, in order to have all your recent data safely stored. To make a backup, you might copy your hard disk file-by-file, but this is not very handy, especially if you backup to floppy disks. It's better to use a backup program, like BackMan. There are several backup programs for the Amiga, but now we will explain why this program is a step before the others. BackMan was born because one of the authors (Flavio) felt the lack of a backup program that could handle `muFS' partitions and take full advantage of `diskspare.device', so the first, simple shell-only version of BackMan saw the light; then, with the addition of a state-of-the-art user interface (MUI is wonderful), data compression (XPK libraries are wonderful, too) and SCSI tape streamer support, the project turned into a full-featured backup utility, able to compete with similar commercial products. Anyway, these are the main features of BackMan: · A very user-friendly MUI (MagicUserInterface) GUI (Graphical User Interface) which makes use of this program a lovable task. MUI is copyright © by Stefan Stuntz. See MUI. · Supports the XPK (eXternal PacKing) libraries for data compression and encryption, to save space and add security to your backups. The XPK libraries are copyright © by Urban Dominik Müller, Bryan Ford and others. · Supports `muFS' (MultiUser File System), a shareware project that provides file protection for multi-user Amiga environments. `muFS' is copyright © by Geert Uytterhoeven. · Support for almost all the backup media (floppy disks, tapes, removables, AmigaDOS files, etc.) and alternative devices (`diskspare.device', `mfm.device', etc.). The `diskspare.device' is copyright © by Klaus Deppisch. These are only the features that BackMan has and other software have not. All the usual features (file selection filters, incremental backups, etc.) aren't mentioned here, but are available! ---------- Footnotes ---------- (1) Usually known as "Everything that can go wrong, will." Disclaimer ********** THERE IS NO WARRANTY, EITHER EXPRESSED OR IMPLIED, AS TO THE QUALITY OR PERFORMANCE OF THIS PROGRAM. THE ENTIRE RISK FOR THE USE OF THIS PROGRAM IS ASSUMED BY THE USER (YOU). THE AUTHOR MAY NOT BE HELD RESPONSIBLE FOR ANY LOSS, DAMAGE OR CORRUPTION OF DATA, EQUIPMENT OR OTHER GOODS RESULTING BY THE USE OR POSSESSION OF THIS PROGRAM, EVEN IF HE IS AWARE THAT SUCH LOSS OR CORRUPTION MIGHT OCCUR. However, the author dedicated himself to ensure that the program will behave as described in this manual and that it does not contain evident flaws. The program has been continuously and thoroughly tested throughout development, and it has proven to be reliable in everyday use. The author is willing to maintain the program and correct any misbehaviours, though he cannot make any promises on this. In other words, I did my best to write a reliable backup program, and in fact I rely on it enough to use it for my very own backups, but I wrote enough programs to know that there is always another bug buried somewhere, no matter how good the programmer is. Be careful the first times you try a program like this, which will be responsible of keeping your data safe, and start using it for important backups only after you've acquired a certain feeling on it. License ******* BackMan is offered to you under the concepts of shareware. You can use BackMan for an evaluation period of up to four (4) weeks without paying any charge; if you are going to use BackMan after the evaluation period, you must register, or your conscience will haunt you forever! See Registering, for more details. In the following paragraphs, BackMan and all the related files will also be indicated as the software or the files. The licensee will also be indicated as you. By copying, distributing and/or using the software you indicate your complete acceptance of this license, and of all its terms and conditions. If you do not agree on the terms of this license, you are required to delete all the copies of this software in your possession. You are allowed to: · Use the software on a single computer at a time; you may install the software on more than one computer, but you cannot use it on more than one computer at a time. It is allowed to use multiple copies of the software at once on the same computer, since the AmigaOS allows this far better than almost any other "multitasking" operating system. `;)' · Make verbatim copies of the original distribution archive, without any files being omitted, added or changed. Archival of the files with compressors such as LhA is permitted; non-reversible compression of single files (especially executables) is forbidden. Adding bulletin board banners (see below) is discouraged, but tolerated. · Distribute copies of the software for no charge, except for a reasonable fee for the media and your copying work. Allowed distribution media include electronic media, such as bulletin boards or the Internet. · Include the software, in compressed and/or uncompressed form, in public domain, freeware or shareware collections such as Fred Fish's Amiga Library Disks or CD-ROMs, provided that the price is reasonable. The author reserves the right to decide how much "reasonable" means. Fred Fish and the Aminet group are expressly authorized and encouraged to include the software in their collections. You are not allowed to: · Distribute the software without the accompanying documentation and/or the files that come with the original distribution archive. · Copy and/or distribute modified versions of the software and/or the accompanying files. Modifying the files for personal use is allowed. · Decompile, disassemble, translate, convert to another programming language or otherwise reverse engineer the software. (If you'd like some programming hints on how it works, feel free to ask. All in all, we're programmers more for the joy of it than for the money.) · Grant sublicenses or other rights on the software, except as explicitly authorized in this license. · Rent the software to others. You agree to cease distribution of the software if the author requests so. The program is released "as is", without any warranty, either expressed or implied; in no event shall the author be liable for any damages caused by the use of this program. See Disclaimer. Registering *********** If you think that BackMan is useful and you wish to continue using it, you should register by sending 40.000 Lit., 40 DM, 25 US$ or 15 UK£ to the author. You will receive a keyfile which enables all the features of BackMan, for this and all future releases! Backup and restore are limited to about 10 Mbytes for unregistered users. Once you are registered, you can upgrade to a new version of BackMan by simply downloading the latest release from your favourite BBS or Aminet ftp site! To register, follow these steps: 1. Print the registration form that comes with the distribution archive of BackMan. We suggest that you fill in the registration form (except for your signature) before you print it. 2. If you haven't done it yet, fill in the empty fields in the printed form: please write in capitals and make sure the form is easily readable. Here you can choose your preferred payment method: please send an international Postal Money Order (Italian Lire (Lit.) ONLY), an EuroCheque (Italian Lire (Lit.) ONLY) or cash (any currency is OK). We strongly suggest to use an international Postal Money Order, because the currency exchange is handled automatically and you don't take the risk of sending cash. Personal bank checks are not accepted, as they are difficult and expensive to cash. If you send your money via a Postal Money Order, you should be allowed to write a short message on the back: please duplicate the important information on the registration form, such as your email address and the preferred method for receiving your keyfile. This will allow us to process your registration quickly even in the unlucky case that your registration form gets lost along the way. 3. Send the registration form to the author (see The Author). REMEMBER: If you choose to send cash along with your registration form, use a thick envelope so that it cannot be seen through, and send it by registered letter. I am not responsible if your money is stolen! 4. Wait a few weeks for your key to be delivered. Normal processing requires about 6 weeks (you know, snail mail can be so slooow...). Remember that we could be on holiday or otherwise unable to process your registration quickly: wait at least 8 weeks before you start to be seriously worried that your registration didn't get to us. You are not allowed to give your personal keyfile to others. The author reserves the right to take any action he may find necessary to stop such distribution, including, but not limited to, making future releases of the software not functional with your keyfile. The author is aware that forged keyfiles do exist. The author does not guarantee that using such keyfiles will be safe for your backups(1): the protection scheme has been intentionally designed to cause unexpected malfunctioning. Be forewarned... ---------- Footnotes ---------- (1) I mean, the software might hang at the wrong moment. Your computer will not blow up, of course. Requirements ************ You need the following items to run BackMan: · AmigaOS Release 3.0 or later. If you haven't upgraded yet, then it's definitely time to do it: you are missing a lot of new features and good software and, what's worse, you are holding Amiga technology behind. Be sure to have `locale.library' installed: BackMan needs it. · BackManMUI, as its name implies, requires the wonderful MagicUserInterface by Stefan Stuntz, version 3.3 or later. MUI has many advantages over other user interfaces, in primis over the system-supplied GadTools library, especially from a programmer's point of view: the supposed slowness and space requirements of MUI aren't definitely an excuse for those who don't like it. If you didn't try it out yet, please do: you will be impressed. MUI is not distributed with BackMan: you can get it through various public domain, freeware or shareware collections, through electronic networks, or directly from the author. See MUI, for copyright and registration information. We will assume that MUI is already installed and working on your system. · BackMan supports data compression through the XPK libraries, created by Urban Dominik Müller, Bryan Ford and others. The XPK master library, along with some compression and encryption sublibraries, is included in the BackMan distribution. See Data Compression and Encryption. · BackMan supports the MultiUser File System by Geert Uytterhoeven; to the knowledge of the author it is the only backup program that supports this file system. MultiUser support requires `multiuser.library' V39 or later and `dos.library' V39 or later. For the hardware side, you will need 1 Mb of memory (for an in-depth discussion on this item, see Memory requirements) and two mass-storage devices (two floppy drives, a floppy drive and an hard disk, an hard disk and a tape streamer, etc.). An hard disk is not strictly required, but then BackMan is pretty useless if you don't have one. Memory requirements =================== You will need no less than 500 kbytes of free memory to use BackManMUI: this figure includes about 250 kbytes for MUI, about 100 kbytes for BackManMUI's code and data, and space for various I/O buffers (please read on for further details). However, you will not be able to backup many files with so little memory. If you use other MUI applications regularly, then you will probably have MUI already in memory, so you will only need about 300 kbytes. BackMan, the shell version, should get away with 250 kbytes of free memory. Please note that you lose only the graphical user interface, not features. Using BackMan from the shell might be very helpful in emergency situations. Some very particular individuals do even prefer the shell version at all times. BackMan stores in memory the complete list of the files being backed up. This requires about 120 bytes per file (the exact amount depends on the length of the file name and comment). The asynchronous I/O routines used by BackMan use 64 kbytes of I/O buffers for each open file. There will be a maximum of two files open at once: one is the file being read or written, the other is the file that holds the backup (only for file backups). The amount of memory used by the disk I/O routines (only for disk backups) depends on several parameters that we won't explain here. The minimum is about 40 kbytes or 3 times the size of a whole cylinder of the backup medium, whichever is bigger. Compression will require 64 kbytes for internal buffers, plus any memory required by the XPK library being used. Data Compression and Encryption =============================== In order to take advantage of data compression and encryption you need the XPK package, a set of freely distributable shared libraries created by Urban Dominik Müller, Bryan Ford and others. XPK libraries offer many features, among which there are several different compression and encryption algorythms and an easy programming interface. XPK libraries have become a standard for compression in the Amiga world. Data compression can greatly reduce the amount of space needed for a backup. The effective compression rate depends on the chosen compression algorythm: the XPK libraries offer a wide range of compressors, and most of them will give you an average compression of 30% or better, provided that the files being backed up were not already compressed with commonly used file compressors such as PowerPacker or archivers such as LhA. On slow backup media, such as floppy disks, data compression can also increase the backup and restore speed, because in such situations the performance bottleneck is the slowness of the backup device: the time gain obtained by reading or writing less data can overcome the time waste required by data compression, especially on faster processors. To create a compressed backup, simply check the appropriate button in the `Backup' configuration group: as already mentioned, a gauge in the `Status' window will show the achieved compression ratio as the backup proceeds. To restore a compressed backup, you have to do nothing particular: BackMan will recognize by itself a compressed backup and will automatically perform all the appropriate operations. There is only one point to mention: if you backed up your data on floppy disks, you should take care of inserting the last backup disk instead of the first, as suggested by the requester that asks you for a disk. This is because the file list on the first disk does not contain full informations on the compressed files (for more information, see Internals). MUI === This package uses MUI - MagicUserInterface © Copyright 1992-97 by Stefan Stuntz MUI is a system to generate and maintain graphical user interfaces. With the aid of a preferences program, the user of an application has the ability to customize the outfit according to his personal taste. MUI is distributed as shareware. To obtain a complete package containing lots of examples and more information about registration please look for a file called `muiXXusr.lha' (`XX' means the latest version number) on your local bulletin boards or on public domain disks. MUI is also available on Aminet in the `util/libs' directory. If you want to register directly, feel free to send DM 30.- or US$ 20.- to: Stefan Stuntz Eduard-Spranger-Straße 7 80935 München GERMANY Support and online registration is available at `http://www.sasg.com/'. BackMan ******* BackMan is a stand-alone shell program, which was developed in order to give you a small command that is able to backup and restore your data even in emergency situations. BackMan has few options when compared to the MUI/GUI version. The shell version is intended mainly for emergency restore actions; normally you should use BackManMUI (see BackManMUI), which has lots of options and facilities. The shell version can also be useful for unattended operations. BackMan does also listen to a couple of keypresses when it is running: · Press `+C' to abort BackMan. · Press `+F' to stop (pause) BackMan; press `+F' again to restart. Command Line Arguments ====================== You can choose which operation to perform with the `RESTORE', `COMPARE', `DIFF' or `LIST' switches. By default BackMan will backup the directory specified by the `DIR' argument (or the current directory if none is specified). You must specify one of `SCSI_DEVICE', `DRIVE' and `FILE' to indicate which medium you want to use for the backup. Here is a description of all the command line arguments: `DIR/M' specify directory to backup or restore. You can specify more than one directory: - if you are creating a new backup, each directory will be backed up on a separate catalog; - if you are restoring a backup, each directory name you specify will become the destination of a catalog on the backup: if catalogs exceed specified directories, the original directory names (saved on the backup) will be used; if directories exceed catalogs, they will simply be ignored. `PAT=PATTERN' select files to backup or restore. This is a standard AmigaDOS wildcard pattern for selecting which files you want to backup or restore. `SCSI_DEVICE/K' `SCSI_ID/K/N' `SCSI_LUN/K/N' specify SCSI tape streamer's device, ID and LUN. `SCSI_DEVICE' indicates the name of the Exec-level SCSI device the streamer is connected to: typical choices are `scsi.device' for most Commodore SCSI controllers, `gvpscsi.device' for GVP SCSI cards, etc. `SCSI_ID' and `SCSI_LUN' indicate the SCSI ID and logical unit of your tape streamer: they default to 5 and 0, respectively. The SCSI ID is typically configured by jumpers or switches on the peripheral: please refer to the peripheral's manual for more details. The SCSI logical unit (LUN) is almost always 0, so you shouldn't need to explicitly set it: again, see the peripheral's manual. `DRIVE/K' drive name(s) (such as `DF0:', `PC0:', etc.). Doesn't need trailing colon, but will be truncated at the first colon if present (i.e. you could say `DF0:foo' if you really wanted to). `FILE/K' name of the file to read/write. `RES=RESTORE/S' instructs BackMan to restore your data. See Restore, in the chapter regarding BackManMUI. `CMP=COMPARE/S' instructs BackMan to compare the data on the backup with those on your hard disk. See Compare, in the chapter regarding BackManMUI. `DIFF/S' instructs BackMan to compare the data on the backup with those on your hard disk, in a way faster than the above. See Diff, in the chapter regarding BackManMUI. `LIST/S' reads file catalogs from the backup and prints them, without restoring data. The `LIST' switch automatically enables `SHOW' (see below) and does nothing else. Only selected entries will be shown. `LINKS/S' backup/restore hard links too. `EMPTY=EMPTYDRAWERS/S' backup/restore empty drawers too. `SHOW/S' print file catalogs before the operation starts. The `LIST' option (see above) automatically enables `SHOW' and does nothing else. Only selected entries will be shown. `OWNER/S' backup/restore file owner information. `ARC=ARCHIVEBIT/S' set the `archived' bit of backed up files. `NV=NOVERIFY/S' don't verify floppy disks as they are written. `NF=NOFORMAT/S' don't format floppy disks. `NFA=NOFMTALL/S' don't format the empty part of the last floppy disk. `NC=NOCOMMENT/S' don't backup or restore file comment. See General options, in the chapter regarding BackManMUI. Please note that this option refers to files' comments, while the next refers to the global backup comment. Don't confuse the two things. `COM=COMMENT/K' specify backup comment. This comment will be shown every time the backup is read. By default, the comment will be set to the name of the drawer being backed up. `CRE=CREATOR/K' specify backup creator's name. `XPK=PACKER/S' specify XPK packer to use. You must specify a string of the form `FAST.42', where `FAST' is the packer's name and `42' is the desired efficiency. `CRYPTER/S' specify XPK crypter to use. BackManMUI ********** BackManMUI is the main program of this package. Once you start it, you will see some informations and some buttons which enable you to do all the magic... The `About...' and `Quit' buttons at the bottom of the window should not need further explanation. The same functions are available through the pull-down menus. Also, BackManMUI can be driven from ARexx. See Rexx commands. Notes on the User Interface =========================== · Most of the requesters displayed by BackManMUI do not provide keyboard shortcuts for the buttons, contrary to common practice: this is a choice, not a mistake. During a backup, it could happen that a requester pops up to inform the user of some problem while he is doing something else: if the user was typing something on the keyboard, he could inadvertently answer the requester, with potentially disastrous results. The requester buttons, however, can be activated with the key and then selected with . You can also select the rightmost button (usually meaning a negative response) by pressing the key. Configuration ============= You should configure BackManMUI before proceeding further. After you have selected the `Configure...' button, you will be presented a window containing two register groups: · the one at the top enables you to set up various options, described in General options, Backup options, Restore options, File selection options; · the one at the bottom, described in Backup device, enables you to set up the backup device that BackManMUI will use. At the bottom of the window there are the usual `Save', `Use' and `Cancel' buttons. Through the pull-down menus, you can also save the current options with another name (`Save As...') or load a previously saved set of options (`Load...'). General options --------------- Select the appropriate checkboxes to activate the following options: `Handle file comment' Instructs BackMan to backup/restore file comments. Turning file comments off is especially useful when restoring files to a disk or partition handled by CrossDOS (or similar), since the CrossDOS file system doesn't support comments: you would get a `Can't set comment' error for every file with a comment. Can also save some memory and disk space, if your files have comments but you don't need to backup them. `Handle file owner' Instructs BackMan to backup/restore file owner information. This option is selectable only if you have `muFS' installed; if you don't have `muFS', this option isn't of much interest for you, anyway. Please note: With `muFS' only `root' can restore file owner information. `Maximum log lines' This slider sets the maximum number of log lines that will be displayed in the progress window. Setting this to a lower number speeds up MUI, especially when you backup very large partitions with lots of directories. Backup options -------------- Select the appropriate checkboxes to activate the following options: `Set 'archived' bit' Instructs BackMan to set the `archived' bit on the backed up files. The bit will be set only if the backup finished successfully (this is a sort of security check). `Backup hard links' If checked, BackMan will backup hard links as they are. If not selected, hard links will be backed up just like a normal file (i.e. the backup will take more space, especially if the link is a directory). A link is stored as the full path of the linked file, relative to the root of the volume it is on; the path is shown in the `Comment' field in the file selection window (see File selection). PLEASE NOTE: Currently BackMan does not support soft links, because they are rarely used and even the operating system lacks full support for them. `Backup empty drawers' Instructs BackMan to backup all the drawers, even if they are empty. `XPK Data Compression' If checked, BackMan will compress the data using the configured XPK sublibrary in order to save space. To select the XPK library, press the popup button on the right (see XPK packer). `XPK Data Encryption' If checked, BackMan will encrypt the data using the configured XPK sublibrary in order to add some security to your backup. To select the XPK library, press the popup button on the right (see XPK crypter). XPK packer .......... You will access the XPK sublibrary selection window by pressing the appropriate popup button in the configuration window. In this window there is a listview to the left, where all the available XPK compression libraries are listed. To the right, a short text displays some informations on the currently selected library. You can set the packing mode (the efficiency) with the `Mode' slider. When you move this slider, the two gadgets below (which display the (de)compression speed and the approximate compression ratio) will be updated. XPK crypter ........... You will access the XPK sublibrary selection window by pressing the appropriate popup button in the configuration window. This window is quite similar to the `XPK Packer' window, with some changes: there is no compression ratio gauge, the listview lists only XPK crypters, and the (de)crypt speed is usually very low (consider this if you are running BackMan on a slow system). The `Mode' slider sets the security of the encrypted data: if you encrypt your data with the `IDEA' method and a security of 100, you may sleep between two pillows... If you enable crypting, you will be asked for a password everytime you start a backup or a restore. WARNING: there is no way to restore an encrypted backup if you have forgotten the password! Restore options --------------- Select the appropriate checkboxes to activate the following options: `Restore 'archived' bit' Instructs BackMan to restore also the `archived' bit, along with the other flags. `Restore hard links' If checked, BackMan will create hard links for files that were backed up as links. If not checked, such files will not be restored. `Restore empty drawers' Instructs BackMan to restore also empty directories. If not checked, empty directories will not be created. `Existing files' Selecting the appropriate action you can replace, rename or skip an existing file during the restore action. If you select `Ask', BackMan will ask you what to do for every file that already exists. If you chose to rename an already existing file, you will be asked for a new file name by a requester entitled `Enter new name': you can skip the file by selecting the `Cancel' button of the requester. File selection options ---------------------- `Show extended protection bits' Displays also protection bits for `Group' and `Others' in the file selection window, in addition to the usual bits. See File selection. This option is useful only if you are working with `muFS' or networking software such as Envoy, because the standard Amiga file systems don't make use of the extended protection bits. `Start with hidden drawers' Instructs BackMan to open the file selection window with all the subdirectories hidden (except those in the root directory). See File selection. Backup device ------------- You can set the backup medium that BackMan will use by selecting one of the register group entries. You have three choices: tape streamer (see Tape), disks (see Disk), and AmigaDOS file (see File). Tape backup ........... To use a SCSI tape streamer with BackMan, you simply have to enter the name of the SCSI device (usually `scsi.device' for Commodore controllers like the A590, the A2091, and A3000's built-in controller) and the SCSI ID and LUN of the tape drive. BackMan will print the vendor and product information of the given SCSI peripheral at the bottom of the configuration window, so you can immediately see if you chose the correct device, ID and LUN. The `Rewind' button instructs BackMan to rewind the tape before every operation. Deselect it for multiple backups on a single tape. The `Verify' button is not implemented as of this version. The following table lists the hardware configurations on which BackMan's tape handling has been tested and is known to work: · Commodore A3000's built-in SCSI controller (`scsi.device' 40.4) - Tandberg TDC 3660 tape streamer (DC6150 and DC6250 cartridges) Some older Tandberg firmware revisions can't write DC6150 cartridges, some other can cause SCSI bus hangups. If you are using this streamer, please report which firmware revision you have and any problems you may have encountered. · Commodore A2091 SCSI controller - Commodore A3070 Tape drive (Caliper) · ICD AdSCSI 2080 controller (on an Amiga 4000) - Archive Viper 150A tape streamer (DC6150 cartridges) You can also use your streamer through a tape device handler (like BTNtape, on Aminet), backing up on a file (see File). Tapes written by BackMan using Tape mode are compatible with tapes written using File mode through BTNtape, but only if the backup fits on a single tape. Disk backup ........... You can choose which disk device BackMan will use by clicking on the popup button near the textfield on the left. Then, simply select the drive and press the `Ok' button. WARNING: don't select your hard disk as the backup device unless you know very well what you're doing, or you might get really upset by the results! There are also some options you can set via the usual checkboxes: `Format' Instruct BackMan to use the `TD_FORMAT' command instead of the usual `TD_WRITE' command when talking to the device. Floppy disk writes are faster with `TD_FORMAT', but some devices may not like being formatted, so here is this switch. `Format all tracks' This is available only if the previous checkbox is active, and will force BackMan to format the remaining tracks on the last disk of the backup. `Verify' If checked, BackMan verifies each write, to assure that the backup media is reliable and that data has been written correctly. If you don't want bad surprises, always keep this checkbox selected! All disk devices that have a valid DOS device entry are supported: this includes CrossDOS disks, DiskSpare disks, hard disks (of which removable cartridges like SyQuest drives are a subset) and most recoverable RAM drives (we wouldn't recommend them as backup devices, however). High density floppies are supported, but you should insert an high density disk before you start the backup; otherwise, BackMan will not read the correct disk size. File backup ........... You can even do a backup on a single AmigaDOS file. The string gadget to the left holds the default directory where backup files will be stored and, optionally, the name of a default backup file (this depends on the `Ask filename' checkbox, see below). There are also some options you can set via the usual checkboxes: `Delete file on error' If checked, BackMan will delete incomplete backup files if you abort the backup operation. `Ask filename' If checked, BackMan will pop up a file request when you start the backup/restore operation, to enable you to select a backup file name. If not checked, the filename present in the string gadget to the left will be used: in this case, the string gadget must contain a valid file name! To use BTNtape with BackMan, you should set the string gadget to `TAPE:' and deselect the two checkboxes. This configuration has been tested with an Amiga 4000, an A2091 SCSI card and an A3070 tape streamer. Backup ====== When you select `Backup' from the main window, a file requester will pop up, asking you the directory you want to backup. Next, the file catalog will be read, and the backup window will appear. Here you have a catalogs list and some buttons, along with some informations on the total/selected files and dimension of the backup you are going to start. The catalogs are listed in the order they were read. but you can sort it with drag'n'drop. As in other windows, actions can be chosen by using buttons or pull-down menus. Some actions are available only from menus. The actions are: `Add...' BackMan can backup more than one catalog in a single backup set. With this button, you can add another catalog to the current backup. A file request will pop up, asking you for the directory to read the catalog from. `Remove' This button will remove the currently selected catalog from the backup. You will be asked for confirmation before proceeding. `Select files...' Selecting this button will open the file selection window for the currently selected catalog (see File selection). You can open the file selection window also by double-clicking on one of the first three columns of the catalogs list. `Comment...' You can change the comment associated with the current catalog by pressing this button. The same action can be obtained by double-clicking on the last column of the catalogs list. `Print...' This option, available only from pull-down menus, will print the currently selected catalogs to the printer or to a file. A file request will pop up, asking for a file name: if you select `Ok' without changing anything, the list will be printed, otherwise saved to the selected file (if you are using `ReqChange' or other tools that patch `asl.library' to use `reqtools.library', direct printing will not work -- you are warned!). `Configure...' Only available from pull-down menus, this option will open the configuration window, to let you make last-moment changes to the configuration (see Configuration). `Creator' Here you can write the name of the backup creator: it will be saved in the backup. This field is used only for your reference. For registered users, this string gadget will default to the name written in the registration key. At last, when you have finished with initializations, you can select the `Start' button to start the backup, or the `Cancel' button to go back to the main window. Restore ======= When you select `Restore' from the main window, a request will pop up (depending on the backup medium you set via the configuration window) asking you to do the appropriate things to make BackMan read the backup catalogs. Next, the restore window will appear. Here you have a catalogs list and some buttons, along with some informations on the total/selected files and dimension of the backup you are going to restore. As in other windows, actions can be chosen by using buttons or pull-down menus. Some actions are available only from menus. The actions are: `Include' This button will include all the files in the currently selected catalog for restoration. `Exclude' This button will exclude all the files in the currently selected catalog, thus they will be not restored. `Select files...' Selecting this button will open the file selection window for the currently selected catalog (see File selection). You can open the file selection window also by double-clicking on one of the last three columns of the catalogs list. `Destination' This option will let you select the destination path for the currently selected catalog. A file requester will pop up to allow you to select the new path. You can obtain the same action by double-clicking on the first column of the catalogs list. `Print...' This option, only available from pull-down menus, will print the currently selected catalogs to the printer or to a file. A file request will pop up, asking for a file name: if you select `Ok' without changing anything, the list will be printed, otherwise saved to the selected file (if you are using `ReqChange' or other tools that patch `asl.library' to use `reqtools.library', direct printing will not work -- you are warned!). `Configure...' Only available from pull-down menus, this option will open the configuration window, to let you make last-moment changes to the configuration (see Configuration). The backup device register group will be ghosted, because you cannot change the backup medium at this point. At last, when you have finished with initializations, you can select the `Start' button to start the restore, or the `Cancel' button to go back to the main window. Compare ======= This window and the related buttons and menus are identical to those of the restore window. The only difference is that files will not be restored, but instead compared to their matching files on your hard disk: this is very useful to discover which files have been changed since your last backup. First, file attributes (date, comment, etc.) are compared; then, if the file size was not changed, file contents are compared too. Any file which differs in one or more attributes or in file contents, or which has been deleted, will be reported. Refer to Restore for more information. Differences =========== This window and the related buttons and menus are identical to those of the restore window. The only difference is that files will not be restored, but instead compared to their matching files on your hard disk in a manner similar (faster, but less precise) to that of compare: files will not be compared based on their contents, but only on their attributes. Thus, there is no need for BackMan to read the whole backup, but only the file catalog. Refer to Restore and Compare for more information. File selection ============== At the top of the file selection window, you can find some useful informations about the number of file and the size of the whole catalog and of the included entries. Below, you can find two listviews: The topmost list displays the directory tree of the catalog. For each directory, you can see some useful informations like the number of files in that directory, and how much of them are selected for backup or restore. Under the listview, there are some buttons which perform the following actions: `Include Dirs' include all the files in the current directory and in all its subdirectories. `Exclude Dirs' exclude all the files in the current directory and in all its subdirectories. `Show/Hide' shows/hides the currently selected directory's contents: all its subdirectories will be hidden/revealed; hiding subdirectories is expecially useful if you have a very deep directory tree. An hidden directory is indicated by a `+' sign to the left of its name, while a shown directory is indicated by a `-' sign; leaf directories have no sign at all. You can also show/hide directories by double-clicking on the first column of the directory entry (the one that shows the directory name). A double click on any other field will include/exclude (depending on the current state) the directory and all its contents. `Filter...' opens the filters window, that allows you to (de)select files using some filter fields. See Filter. The list at the bottom displays the files contained in the currently selected directory. You can (de)select each file by clicking on it. Multiple selection is also possible. Under the listview there are some buttons which perform the following actions: `All' select all files, for successive inclusion or exclusion. `None' deselect all files. `Include' include all the selected files. You can do the same thing by double-clicking on an excluded file. `Exclude' exclude all the selected files. You can do the same thing by double-clicking on an included file. Filter ------ Using the gadgets in the `Filter' window, you can do some important filtering actions on the current catalog. There are some checkmarks, often followed by a string gadget where you can enter parameters for the filter. At the bottom of the window there are the `Include' and `Exclude' buttons, which will do the corresponding action on the files of the currently selected directory. A complete description of each filter item follows: `'Archive' bit set/unset' exclude/include files with the `archived' bit set/unset. Very useful for incremental backups. `Modified on or after' operate on files modified on or after the specified date. Date must be in the same format used by the `List' command. `Modified on or before' operate on files modified on or before the specified date. Date must be in the same format used by the `List' command. `Matching pattern' operate on files matching the specified pattern. You can use the normal AmigaDOS wildcards. `Apply to current drawer only' By default, the filter acts on the files of current directory and of all his subdirectories. If you check this option, inclusion/exclusion will be limited to the files of the current directory. The filter window is asyncronous, so you can keep it open while working on the file selection window. The window wiil be automatically closed when you close the file selection window. Rexx commands =============  This is a list of available Rexx commands: `BACKUP ,...' Reads the specified directory or directories and opens the backup window. See Backup. `RESTORE ' Reads from the specified source and opens the Restore window. See Restore. `COMPARE ' Reads from the specified source and opens the Compare window. See Compare. `START' `PAUSE' `ABORT' These commands do exactly the same action as the corresponding buttons in the progress window, except that `ABORT' does not ask for confirmation during unattended operation. `CONFIG' This command allows you to change the configuration: `LOAD ' Loads the configuration from the specified configuration file. `SAVE ' Saves the configuration to the specified configuration file. `ITEM [VALUE] ' Sets a configuration item to the specified value. Configuration items correspond to the options in the Configuration window. Each checkmark, field, etc. has a specific four-letter ID (which is, by the way, the MUI object ID). For a table of available configuration items, see Configuration items. `TAPE' This command allows you to control a tape drive from BackManMUI. There are several subcommands, which can be abbreviated as indicated: `REWind' `RETension' `EJECT' PLEASE NOTE: The `ERASE' command is missing on purpose. Believe me, you don't want to erase a tape during unattended operation. And if you really want, use some other tool, for example BTNtape's `tape.rexx' script. `QUIT' `HIDE' `SHOW' These commands are defined by MUI. For a description of their meaning, please refer to MUI:Docs/English/MUI.guide/ARexx. Configuration items ------------------- Suggestions =========== You can speed up BackManMUI by iconifying it after you start an operation: the speed gain is significant and noticeable by sight on fast media (such as HD-to-HD backups on a file). BackManMUI will automatically uniconify itself if it needs to show some requester and when the operation finishes. Internals ********* The backup is organized in this way: 1. Primary file list 2. Data, subdivided in blocks 3. Secondary file list Writing the file list twice will give you an added security, should the first file list be corrupted by chance or by mistake. Entries are written in alphabetical order, files first, then each directory with all its subentries. Data is written in fixed-size blocks, eventually compressed. If you do a compressed backup on floppy disks, the primary list will not contain informations on the compressed size of data, so a partial restore operation will need to read all the files in order to find out where the needed files are located. This will not slow down the restore operation too much, because there is no need to really decompress data: we only need to read the block headers. However, if you plan to do a partial restore, insert the last disk of a backup: BackMan will read in the secondary list, which contains all the informations needed to skip exactly to the beginning of selected files. If you insert the first disk, BackMan will remind you that this might not be what you intended to do: you will need to insert the first disk only if the last got corrupted and the file list on it is unreadable. Please note that all operations are permitted even if BackMan has read the first (incomplete) list: they will only be slower and less comfortable because you will need to insert all the disks. Non-compressed backups aren't affected by which list has been read. Please note that the secondary file list could actually start on the last but one disk: in this case BackMan will request the correct disk. This can happen because there could be just a little bit of space left on the last but one disk, but not enough to contain the whole file list, so it will be split between the last two disks. The secondary file list could actually start on even earlier disks if your backup contained an extremely large number of files (slightly more than 3000 files in the worst case, usually over ten thousands). In this case it will span more than two disks. Caveats ******* · It is the user's responsibility to prevent any changes to the files being backed up in the time interval from when the directory is read to when the file is effectively backed up on disk, tape, or whatever. Any changes would result in more or less inconsistent data being written to the backup, particularly if the file size is changed. BackMan will notice changes in file size and abort the backup (no recovery would be possible, except rewriting most of the backup from the beginning), but other, although less relevant, changes to the file attributes will deliberately go unnoticed. · If you are really really paranoid, I'd suggest to make a backup copy of the first and/or last backup disks, because these two disks contain the main and secondary file lists: in this way you will be more protected against corruption of said lists, without whom it is impossible to restore the backup. · BackMan can't handle backups of more than about 2 gigabytes of data. But then, is there anybody out there who backs up 2 gigabytes(1) in a single shot? `;)' ---------- Footnotes ---------- (1) If you're curious, it means over 2383 DD disks... Bug reports *********** If you discover something wrong in BackMan, or if you have some suggestions for future releases, please write to the author (see The Author), preferably via e-mail. If you are reporting a bug, please provide the following information: · The version of BackMan which shows the bug. · The exact version of the operating system (see Workbench's `About' requester), MUI and any other relevant software. This is essential. · Your full Amiga configuration (model, CPU, peripherals, etc.). · A detailed explanation on how to reproduce the problem. If I can't reproduce the problem, I'll have lots of troubles locating it, and I will probably end up thinking it is your fault. Bug reports like "it doesn't work sometimes" are definitely not what we need. · If you use a tool like The Enforcer and the bug involves an Enforcer hit, please add the output of this tool to the bug report. Try to be clear, and I'll try and correct the bug as soon as I can! The Author ********** This software was written by Flavio Stanchina. You can reach me at these addresses: Flavio Stanchina Loc. Montevaccino 39 38040 Trento ITALY email: (don't send files over 16kb without asking, please) You may have noticed that sometimes I don't answer mails very fast. That's because I go snowboarding as often as possible (yes, during summer too, even if not very often - living in the Italian Alps is good), so sometimes I don't have time to answer all mails and do some programming. Unfortunately Sandro Tolaini, co-author of Backman from the early days, main author of the MUI interface (which he made me appreciate) and the XPK compression, was forced to give up his Amiga for a PC(1). I will do my best to continue development as good as Sandro would. ---------- Footnotes ---------- (1) Poor Computer. Concept index ************* Author, the The Author BackMan BackMan BackManMUI BackManMUI Backup Backup Backup device Backup device Backup device, disk Disk Backup device, file File Backup device, tape Tape Backup options Backup options Bug reports Bug reports Bugs, reporting Bug reports Caveats Caveats Command Line Arguments Command Line Arguments Commands, Rexx Rexx commands Compare Compare Compressing data Data Compression and Encryption Compression, XPK XPK packer Configuration Configuration Configuration items Configuration items Copyright <1> License Copyright Requirements Data compression Data Compression and Encryption Data encryption Data Compression and Encryption Differences Diff Disclaimer Disclaimer Disk backup Disk Distribution License Encrypting data Data Compression and Encryption Encryption, XPK XPK crypter File backup File File selection File selection File selection options File selection options Filter Filter General options General options Internals Internals Introduction Introduction Legal Issues Disclaimer License License Magic User Interface MUI Memory requirements Memory requirements MUI MUI Options, backup Backup options Options, file selection File selection options Options, general General options Options, restore Restore options Registering Registering Reporting bugs Bug reports Requirements Requirements Requirements, memory Memory requirements Restore Restore Restore options Restore options Rexx commands Rexx commands Suggestions Suggestions Tape backup Tape User interface BackManMUI Warranty, no Disclaimer XPK crypter XPK crypter XPK packer XPK packer