BackMan

The Backup System Version 1.4

Copyright c_{◯} 1995-96 Flavio Stanchina

Permission is granted to make and distribute verbatim copies of this manual, and to distribute translations into another language, provided the copyright notice and this permission notice are preserved on all copies.

This manual has been typeset by TEX and Texinfo.

1 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 backing up) on floppy disks, removable disks, 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 \begin{matrix}c \\ ◯ \end{matrix} by Stefan Stuntz. See Section 5.3 [MUI], page 6.

• 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 \begin{matrix}c \\ ◯ \end{matrix} 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 \begin{matrix}c \\ ◯ \end{matrix} 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 \begin{matrix}c \\ ◯ \end{matrix} 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!

1 Usually known as “Everything that can go wrong, will.”

2 Disclaimer

THERE IS NO WARRANTY, EITHER EXPRESSED OR IMPLIED, AS TO THE QUAL-ITY 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 OR CORRUPTION OF DATA, EQUIPMENT OR OTHER GOODS RESULTING BY THE USE OR POSSESSION OF THIS PROGRAM, EVEN IF IN KNOWLEDGE THAT SUCH LOSS OR CORRUPTION MIGHT HAPPEN.

However, the author dedicated itself 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.

3 License

BackMan is offered to you under the concepts of shareware. You can use it for an evaluation period of up to 4 weeks without paying any charge, but if you are going to use BackMan after the evaluation period, you must register, or your conscience will haunt you forever! See Chapter 4 [Registering], page 4, 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; nonreversible 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 Chapter 2 [Disclaimer], page 2.

4 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 or 25 US$ 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. If possible, fill in the registration form on the computer (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: 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. 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 Chapter 11 [The Author], page 21). 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…

1 I mean, the software might hang at the wrong moment. Your computer will not blow up, of course.

5 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 Section 5.3 [MUI], page 6, 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 Section 5.2 [Data Compression and Encryption], page 6.

• 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 Section 5.1 [Memory requirements], page 5) 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.

5.1 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.

5.2 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 Chapter 8 [Internals], page 18).

5.3 MUI

Parts of this package use

MUI – MagicUserInterface

\begin{matrix}c \\ ◯ \end{matrix} Copyright 1993-96 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.

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/

6 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 Section 7.1 [BackManMUI], page 10), 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 CTRL+C to abort BackMan.

• Press CTRL+F to stop (pause) BackMan; press CTRL+F again to restart.

6.1 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 Section 7.4 [Restore], page 15, in the chapter regarding BackManMUI.

‘CMP=COMPARE/S’

instructs BackMan to compare the data on the backup with those on your hard disk. See Section 7.5 [Compare], page 16, 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 Section 7.6 [Diff], page 16, 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 Section 7.2.1 [General Options], page 10, 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.

7 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… You can find the description of the various actions in the following sections of this manual.

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.

7.1 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 TAB key and then selected with RETURN. You can also select the rightmost button (usually meaning a negative response) by pressing the ESC key.

7.2 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 − Section 7.2.1 [General Options], page 10, − Section 7.2.2 [Backup Options], page 11, − Section 7.2.3 [Restore Options], page 12, and − Section 7.2.4 [File Selection Options], page 12;

• the one at the bottom, described in Section 7.2.5 [Backup Device], page 12, 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...’).

7.2.1 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.

7.2.2 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 Section 7.7 [File Selection], page 16). 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 Section 7.2.2.1 [XPK Packer], page 11).

‘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 Section 7.2.2.2 [XPK Crypter], page 12).

7.2.2.1 XPK Packer

You will access the XPK sublibrary selection window by pressing the appropriate popup button in the configuration window.

In this window, you have a listview to the left, where all the available XPK libraries are listed. To the right, a short text shows you some infos on the currently selected library.

You can set the packer efficiency with the available slider. When you move this slider, the two gadgets below (which display the (de)compression speed and the average compression ratio) will be updated.

We suggest you to use the RAKE XPK library, which has a very good compression ratio, and an acceptable speed (at least on my Amiga 1200 — Sandro).

7.2.2.2 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 provided slider sets the security of the encrypted data: if you encrypt your data with IDEA 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. REMEMBER: there is no way to restore an encrypted backup if you have forgotten the password!

7.2.3 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.

7.2.4 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 Section 7.7 [File Selection], page 16. 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 Section 7.7 [File Selection], page 16.

7.2.5 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, disks, and AmigaDOS file.

7.2.5.1 Tape

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 Section 7.2.5.3 [File], page 14). 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.

7.2.5.2 Disk

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.

7.2.5.3 File

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.

7.3 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 Section 7.7 [File Selection], page 16). 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 Section 7.2 [Configuration], page 10).

‘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.

7.4 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 Section 7.7 [File Selection], page 16). 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 Section 7.2 [Configuration], page 10). 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.

7.5 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 Section 7.4 [Restore], page 15 for more information.

7.6 Differenze

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 Section 7.4 [Restore], page 15 and Section 7.5 [Compare], page 16 for more information.

7.7 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 Section 7.7.1 [Filter], page 17.

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.

7.7.1 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.

7.8 Suggestions

An intresting way to speed up BackManMUI is to iconify 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.

8 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.

9 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? ;)

1 If you’re curious, it means over 2383 DD disks…

10 Bug Report

If you discover something wrong in BackMan, or if you have some suggestions for future releases, please write to one of the author (see Chapter 11 [The Author], page 21), 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.

• 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!

11 The Author

This software was written by Flavio Stanchina. You can reach me at these addresses, via standard or electronic mail.

Flavio Stanchina Loc. Montevaccino 39 38040 Trento ITALY

FidoNet: 2:333/801.9 Internet: flavio@iestn.inet.it

If you want a reply, please use e-mail.

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.

1 Poor Computer.

12 Thanks

We would like to thanks the following people:

• The Amiga engineers, who created Amiga!

• Our betatesters Gianmarco Giovannelli, Ugo Paternostro, Riccardo Torrini and Marco Amadori (maintainer of the italian localization).

• All our registered users, for their material support to the development of BackMan!

Concept Index 23

Concept Index

A

Author . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

B

BackMan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1, 8 BackManMUI. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Backup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Backup Device . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Backup Options. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Bug Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

C

Caveats. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 Command Line Arguments . . . . . . . . . . . . . . . . . . . . . . . . 8 Compare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Compression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Crypting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

D

Differenze. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Disclaimer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Disk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Distribution. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

E

Encryption. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

F

File. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 File Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 File Selection Options. . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

G

General Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

I

Internals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

L

Legal Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 License . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

M

MagicUserInterface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 MUI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

O

Options, Backup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Options, File Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Options, General. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Options, Restore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

P

Packing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

R

Registration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Restore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Restore Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

S

Suggestions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

T

Tape . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Thanks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

U

User Interface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

W

Warranty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

X

XPK Crypter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 XPK Packer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

Table of Contents

1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 2 Disclaimer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 3 License. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 4 Registering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 5 Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

5.1 Memory requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 5.2 Data Compression and Encryption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 5.3 MUI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

6 BackMan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

6.1 Command Line Arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

7 BackManMUI. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

7.1 Notes on the User Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 7.2 Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

7.2.1 General Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 7.2.2 Backup Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

7.2.2.1 XPK Packer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 7.2.2.2 XPK Crypter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

7.2.3 Restore Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 7.2.4 File Selection Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 7.2.5 Backup Device. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

7.2.5.1 Tape . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 7.2.5.2 Disk. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 7.2.5.3 File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

7.3 Backup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 7.4 Restore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 7.5 Compare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 7.6 Differenze. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 7.7 File Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

7.7.1 Filter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 7.8 Suggestions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

8 Internals. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 9 Caveats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 10 Bug Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 11 The Author . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 12 Thanks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

ii

Concept Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23