@database ???? @master ???? @width 80 @width 76 @node Main "Preliminary" ============================================================================ @toc Sommaire ABackup 5.01 Copyright (C) 1992-1995 by Denis GOUNELLE & Reza ELGHAZI ============================================================================ @{b} This program is made available to you as a SHAREWARE program. For more informations, please take a look at the @{" Diffusion " Link "Diffusion"} section. @{ub} Without written authorization, any commercial usage or selling is absolutly forbiden. You may copy and spread this program under the following conditions: 1. All the files must be provided 2. The files are not modified in any way 3. You can't ask for more than $6 for this In spite of several tests, no warranty is made that there are no errors in ABackup. YOU USE THIS PROGRAM AT YOUR OWN RISK. In no event the authors will be liable for any damage, direct or indirect, resulting of the use of ABackup. @endnode @node Diffusion "Diffusion" ABackup is a SHAREWARE program. We decided to respect the original principle of this concept : this version is fully fonctionnal, without any "remember" request. You can use it as long as you want, and without any restriction. However, if you like ABackup, please also respect the SHAREWARE concept, by sending US $20 to the @{" Authors " Link "Auteurs"}. This will encourage us to improve ABackup, and to create other programs for the Amiga. A register form is included with the program. For payement, please use only: - checks from a French bank - cash (French francs if possible, otherwise any currency of the EEC, US dollars or Swiss francs) - checks from a bank of the EEC (drawn in French francs only ; if you send an EuroCheck, please add 40 FF because the Banque de France takes a taxe on this checks) If you send a check, don't forget to make it payable to "Denis GOUNELLE". In any case, give you full postal address (and make it readable !). When we get your registration, we will send you a disk with the latest version of ABackup, and some other programs and utilities. The updates will be available via the usual PD distributors (Fred Fish, Aminet, etc...). @endnode @node Sommaire "Table of contents" Table of contents : @{" Introduction " Link "Introduction"} @{" Legal informations " Link "InfoLegales"} @{" Diffusion " Link "Diffusion"} @{" Four ways to make it work " Link "ModesDeFonct"} @{" Arguments " Link "Arguments"} @{" Application window " Link "AppWindow"} @{" Compatibility with the previous versions " Link "Compatibilite"} @{" Thanks " Link "Merci"} @{" Authors " Link "Auteurs"} @{" Program history " Link "Historique"} @{" Frequently Asked Questions " Link "FAQ"} @endnode @node Introduction "Introduction" ABackup is a program which allow you to backup data from your hard disk. It can be used on any Amiga model, providing you have Kickstart V37 or higher, and at least 1 Mb of memory. ABackup has all the features you might expect from such programs: - Both full and selective backup and restore operations (you can select the files by name, by date, by protection bits, but also one by one) - Backup to floppy disks, to partitions (for example a SyQuest cartrige) or to an archive file. Optionnal data compression, data encryption, verification, and archive bit setting. - Restore to any directory, with or without restoring the original directory tree, and handling of already existing files. Optionnal date and empty directories restore. - Backup of non-AmigaDOS partitions (PC, Mac, UNIX, ...) - Optionnal report file for all operations - Full Intuition interface, AmigaGuide documentation. However, ABackup is not just one more backup program. This program also provide unusual features, like: - transparent support of High Density floppy disks. Cyclic utilisation of several disks drives. Supports mixing of Double Density and High Density floppy disks. Transparent support of the "diskspace.device". - Asynchronous writes for maximal backup speed - Data compression can be performed by the "xpk.library" or an external program. Automatic exclusion of files already compressed. - Allows full operation automatization : you can, for example, start a backup just with a double-click over an icon. - Lots of controls, in order to avoid data loss due to handling errors. - Supports of the "MultiUserFileSystem" : access rights and owner are automatically backed up. When restoring files to a partition which is managed by this filesystem, theses informations will be automatically restored. @endnode @node InfoLegales "Legal informations" The "xpk.library" library is (C) by U. Dominik Mueller, Bryan Ford, Christian Schneider, and the others XPK authors. The "diskspare.device" device is (C) by Klaus Deppisch. The "MultiUserFileSystem" filesystem is (C) by Geert Uytterhoeven. All other products, brands and softwares quoted, are trade marks of their respective owners. @endnode @node Auteurs "Authors" ABackup has been written by : Denis GOUNELLE and Reza ELGHAZI 27, rue Jules Guesde 51, rue Sauffroy 45400 FLEURY-LES-AUBRAIS 75017 PARIS FRANCE FRANCE denis.gounelle@ramses.fdn.org reza.elghazi@psygnosis.co.uk @endnode @node ModesDeFonct "Four ways to make it work" Depending on the @{" Arguments " Link "Arguments"} specified when starting the program, ABackup may be used in four different modes : 1. @{" Interactive with Intuition interface " Link "StdIntuition"} This is the default mode : the program shows a standard Intuition GUI, and you direct the operations with the mouse and/or the keyboard. 2. @{" Automatic with Intuition interface " Link "AutoIntuition"} This mode is useful when you often do the same operation : you can create an Project icon, whith all the suitable parameters, and start this operation just by a double-click on the icon. 3. @{" Interactive with Shell interface " Link "StdShell"} This mode allow to use ABackup as a file archiver, as if it was a program like "LhA" or "Tar". 4. @{" Automatic with Shell interface " Link "AutoShell"} This mode is very useful, for example, to make night-time backups to a disk partition or a streamer. @endnode @node StdIntuition "Interactive with Intuition interface" Once ABackup has been loaded and setup, the @{" Main window " Link "MainWin"} is opened on the screen specified in the Preferences. @endnode @node AutoIntuition "Automatic with Intuition interface" This mode is selected by a double-click on a "Project" icon, which "Default Tool" is ABackup, and which "Tool Types" have at least the "MODE" and "FROM" specifications (see @{" Arguments " Link "Arguments"}). Once ABackup has been loaded and setup, the program automatically loads the directory tree (or the archive catalog) and does the file selection. Then, the @{" Monitor window " Link "MonitorWin"} appears, and the specified operation begins. @endnode @node StdShell "Interactive with Shell interface" This mode is selected when you start ABackup from a Shell command line, specifying at least the operation to perform (BACKUP, RESTORE or VERIFY arguments) and the operation source (FROM argument). The program will not open any Intuition window (except for the requests) but will rather print messages into the Shell window. Once ABackup has been loaded and setup, the program automatically loads the directory tree (or the archive catalog) and does the file selection. Then, the specified operation begins and messages, like those usually displayed on the @{" Monitor window " Link "MonitorWin"}, appear on the Shell window. @endnode @node AutoShell "Automatic with Shell interface" This mode is selected like the @{" Interactive with Shell interface " Link "StdShell"} mode, but with the additionnal QUIET argument. In this case, ABackup doesn't make any request nor any display (except error messages), so it is suggested to ask for a full operation report. Once ABackup has been loaded and setup, the program automatically loads the directory tree (or the archive catalog) and does the file selection. Then, the specified operation begins. @endnode @node Arguments "Arguments" The list of possible ABackup arguments is shown below. For each argument, the first line shows the Shell syntax, while the second one shows the Tool Types syntax. FROM/K source FROM=source Specifies the name of the source directory or volume (backup), or the source archive (restore/verify). In order to backup several volumes at the same time, specify the volume names separated by a comma (e.g. "SYS:,Work:"). TO/K destination TO=destination Specifies the name of the destination archive (backup), or the directory to restore to (restore). B=BACKUP/S MODE=BACKUP Begins a backup operation, in automatic mode. R=RESTORE/S MODE=RESTORE Begins a restore operation, in automatic mode. V=VERIFY/S MODE=VERIFY Begins a verify operation, in automatic mode. SE=SELECT/K ARC|file SELECT=ARC|file Specifies the name of the selection file to use (see @{" Selection recording " Link "EnrSelection"}). By default, in automatic mode, all the files are selected. The "ARC" keyword is an easy way to select all the files with the archive bit cleared, whithout having to create a selection file. RP=REPORT/K file REPORT=file Specifies the name of the report file. IM=IMAGE/S IMAGE This toggle activates the "image" backup, which allow to backup non-AmigaDOS disk partitions. PRF=PREFS/K file PREFS=file Specifies the name of the Preferences file to use. CAT=CATALOG/K file CATALOG=file Specifies the name of the archive catalog file (restore/verify). Useful only if the "Use catalog file" option has been activated. SFX=ECSUFFIX/K .suffix ECSUFFIX=.suffix Specifies the suffix added by the external compression program. For example, if you want to use the LZX program, you must specify the ".lzx" value for this argument. QUIET/S This toggle activates the @{" Automatic with Shell interface " Link "AutoShell"} mode. HELPPATH=directory Specifies the name of the online help directory. Default value is "HELP:language", where language is the prefered language, as specified in the system Preferences. PREFPATH=directory Specifies the name of the Preferences program directory. Default value is "SYS:Prefs". @endnode @node MainWin "Main window" The main window allow to select the operation to perform : Backup files and dirs To backup a directory, or one (or more) logical volume, by archiving all the files in this directory or this volume(s). Once you will have selected the source directory or volume, ABackup will load the list of the corresponding files, and display the @{" Selection window " Link "SelectionWin"}, to let you select the files to backup. Any file or directory which comment begins with the "SKIPME" keyword will be ignored when scanning the directory tree : this allow, to avoid loosing lots of time to load the content of a big directory you never backup. Backup partitions To backup one or more physical volumes, by archiving every cylinder of this volume(s). ABackup will display the @{" Selection window " Link "SelectionWin"}, to let you select the partitions to backup. CAUTION ! Restoring such partitions will be possible only if their characteristics have not changed : for exemple, the size and location of the partition must be the same as those backed up. Take care that ABackup can't format the target drive : if you need to restore a partition to a new disk drive, you must first low-level format it. Restore To restore data previously backed up. ABackup will display the @{" Archive selection window " Link "ArchiveWin"}, to let you select the archive to restore. Verify To verify an archive. This means at least integrity checking, but you can also ask to compare backed up data with original data. In this last case, ABackup will perform integrity checking even if a comparison is not possible (original file not found, etc...) ABackup will display the @{" Archive selection window " Link "ArchiveWin"}, to let you select the archive to verify. Rebuild catalog This function is useful when an archive file is damaged, or if you loose the last floppy disk of a backup set : it allow to rebuild the archive catalog, which is required to restore data. Take care that this function is not supposed to recover any error that may occur, and is not intended for unexperimented users. If the damaged archive is an archive file, you must first check that the first header block is at a block boundary, that is at a address multiple of 512 (you may use the "TYPE archive HEX" command for this, the first and the third long word of the header blocks are set to "#0000"). If the damaged archive is on floppy disks, you must give the disks in increasing order of disk numbers. This function works even if some disks are missings. ABackup will display the @{" Archive selection window " Link "ArchiveWin"}, to let you select the archive for which the catalog is to rebuild. Preferences To call the external configuration program See also @{" Application window " Link "AppWindow"}. @endnode @node SelectionWin "Selection window" This window shows the list of files or partitions, so that you can select which are to backup, restore, or verify. It is made of an upper part, containing selection gadgets, and a lower part, in which is displayed the list of the files or partitions. You can scroll this list, using the scroller at the right of the window. You can print the currently displayed list, using the "Print current list" item in the "Project" menu. When selecting files to backup, you can add a new volume or directory to the current list, using either the "Add directory" item in the "Project" menu or the @{" Application window " Link "AppWindow"}. In order to have an estimation of the number of disks and of the time required for the backup, you can use the "Estimate" item in the "Project" menu. The "Files:" and "Size:" fields respectively show the number of selected files or partitions, and the total size of the selected objects. The "Directory:" field shows the name of the directory containing the currently displayed files. To go down in the directory tree, just click on a directory name : the contents of this directory will be displayed (except if this directory is empty). The "Root" and "Parent" gadgets allow to go up in the directory tree, respectively to the root directory and to the parent directory of the current directory. If you click on a file, empty directory, or partition's name, you will toggle the state of this entry : if it was selected, it will be unselected, and if it was not selected, it will be selected. To toggle all the content of a not empty directory, you just have to hold down the SHIFT key, while clicking on the directory's name. You can move the mouse without releasing the left button, in order to "drag-select" or "drag-unselected" the other files, directories, or partitions. If you double-click on a file's name, ABackup will try to call a visualisation program, depending on the file's type. A requester will allow you to confirm the visualisation request and, eventually, to modify the name of the program to call. If you double-click on a partition's name, ABackup will display some informations about this partition (unit number, number of blocks per track, etc...). The selection gadgets are: Filter Tells if the other selection gadgets will add ("Include") or remove ("Exclude") files or partitions from the selection list. Recursive If activated, any selection action will be recursively applied to any files or directories, contained in the sub-directories of the current directory. All Include or exclude all the files or partitions. Reverse Toggle all the selection : any selected file or partition is unselected, and any unselected file or partition become selected. By name Include or exclude all the files or partitions matching a name ("ram:foo" for example) or a pattern ("#?.info" for example). ABackup recognize the same patterns as AmigaDOS (refer to your AmigaDOS manual for more informations). A requester will allow you to enter the name or the pattern. Two gadgets allow you to find files or partitions that match ("Match") or that don't match ("No Match") the given name or pattern. By date Include or exclude files depending on their last modification date and/or time. A requester will allow you to enter the date (in "JJ-MM-AA" or "JJ-MMM-AA" format) and/or the time ("HH:MM:SS" format). If you only specify a date, the time will be assumed to be "00:00:00". If you only specify a time, the date will be assumed to be today's date. Two gadgets allow to find files modified before ("Before") or after ("After") the specified date. By bits Include or exclude files depending on their protection bits. A requester will allow you to specify, for each protection bit, if you want it to be set ("+" character in the corresponding gadget), cleared ("-" character in the corresponding gadget), or if you don't want to test it (empty gadget). At the bottom of the window, three gadgets allow (from left to right): - to start the operation (backup, restore or verify). ABackup will display the @{" Monitor window " Link "MonitorWin"}. - to call the external configuration program - to go back to the @{" Main window " Link "MainWin"}. Last, the "Selection" menu allow to record a selection, in order to recall it later. See @{" Selection recording " Link "EnrSelection"} for more informations. @endnode @node MonitorWin "Monitor window" This window allows you to follow the process of the current operation (backup, restore, etc...). It is made of an upper part, with eleven information fields, and a lower part in which messages are displayed. The information fields are: Saved/Restored/Verified/Read Number of files or partitions processed (left), number of bytes processed (right). The gauge at the right of the window shows the percentage of files or partitions processed on the total number of selected object. Left Number of files or partitions not yet processed (left), number of bytes not yet processed (right). The gauge at the right of the window shows the percentage of files or partitions not yet processed on the total number of selected object. Disk Number of the current floppy disk (left). Duration of the operation (right). Compression Compression ratio. Destination/Source Archive name. The gauge at the right of the window shows the current position on the target (write) or source (read) volume. At the bottom of the window, the "Pause" gadget allow to pause the operation. Click a second time on this gadget to resume. The "Abort" gadget allow to definitively abort the operation (you will be asked for confirmation). The name of the optional report file is displayed between these two gadgets. Once the operation finished, ABackup will ask you if you want to go back to the @{" Main window " Link "MainWin"}. If you answer "no", the program will go back to the @{" Selection window " Link "SelectionWin"}. @endnode @node LoadTreeWin "Loading window" This window appears while ABackup is scanning the content of a directory or a volume, or is loading the catalog of an archive. It allows to follow the processing and, eventually, to abort it by clicking on the "Abort" gadget : ABackup will return to the @{" Main window " Link "MainWin"}. Once the loading finished, ABackup will display the @{" Selection window " Link "SelectionWin"}, so you can select the files or partitions to process. If you have asked for a "Verify" operation, note that a Preferences option allow to skip the selection and to always verify all the archive. @endnode @node InfoWin "Information window" This window appears when ABackup is about to load the catalog of an archive. It displays some informations saved during the backup : Source Name of the source directory(ies) or volume(s). Files Number of files in the archive. Bytes Number of data bytes in the archive. Date Backup date. Time Backup time. Compression Compression method used for the backup. Comment Optionnal comment specified during the backup. To continue the operation, click on the "Continue" gadget : ABackup will display the @{" Loading window " Link "LoadTreeWin"}. To cancel and go back to the @{" Main window " Link "MainWin"}, click on the "Abort" gadget. @endnode @node ArchiveWin "Archive selection window" This window is like the one used by the Preferences program. It is made of: - a cyclic gadget that let you select the archive type (device, file, tape) - two lists that let you select the units to use, if the archive type is set to "Device". The list on the left shows all the connected units, the one on the right shows the units to use. To transfert a unit from one list to another, just click on it's name in the list. - a string gadget, and a request calling button, that let you select the name of the archive file, if the archive type is set to "File". - a gadget that allow you to ask to load the archive catalog from a file, instead of loading it from the archive itself. To validate the request, click on the "Ok" gadget : ABackup will then display the @{" Information window " Link "InfoWin"}, if you have asked for a restore or a verify operation. If you asked for a catalog rebuilding, ABackup will display the @{" Monitor window " Link "MonitorWin"}, and will start to read the archive. Once the archive will have been read entirely, ABackup will create an archive catalogue file. To use this catalog, activate the "Use catalog file" option. @endnode @node EnrSelection "Selection recording" ABackup has the capability of recording a file selection so that you can recall it later. This can be useful if you use frequently the same selections (for example all the files with the archive bit cleared) but also when using one the automatic mode: you can specify the name of a selection file as an @{" Arguments " Link "Arguments"}. The recording process records the selection actions themselves, and not the name of the selected files (assuming you don't select files or directories by clicking on their names in the list). This way, you can apply this selection to any source directory. More, if new files are created, they will be automatically taken in account. In order to record a selection, choose the "Record" item in the "Selection" menu, on the @{" Selection window " Link "SelectionWin"}. Once you will have specified the name of the selection file, ABackup will record all your selection actions. Once you have finished, select the "Save" or "Abort" item in the "Selection" menu, depending if you want to keep this selection or to cancel the recording. To recall a selection, select the "Load" item in the "Selection" menu. A file requester will be displayed, allowing you to specify the selection file you want use. Then the file will be loaded, and ABackup will execute the selection actions it contains. Selections are recorded as text files, in a directory specified in the Preferences. Here is the description of the selection language used by ABackup, which will allow you to create or modify a selection file as you like, by means of your usual text editor. CD : Go back to the root directory CD / Go back to the parent directory CD "dir" Go down into the given sub-directory INVERT Reverse the selection RECURS {YES|NO} Set the recursivity flag INCLUDE ALL EXCLUDE ALL Include/exclude all the files INCLUDE "name" EXCLUDE "name" Include/exclude the given file or directory INCLUDE NAME "name or pattern" {MATCH|NOMATCH} EXCLUDE NAME "name or pattern" {MATCH|NOMATCH} Include/exclude using the given name or pattern INCLUDE DATE "date and/or time" {UPTO|SINCE} EXCLUDE DATE "date and/or time" {UPTO|SINCE} Include/exclude using the given date and/or time INCLUDE BITS mask value EXCLUDE BITS mask value Include/exclude using protection bits (files for which "bits AND mask = value") Here is an example of selection file: RECURS YES ; back to the root ! CD : ; clears any previous selection EXCLUDE ALL ; include all files with archive bit cleared INCLUDE BITS "0x10 0x00" ; exclude all ".o" files EXCLUDE NAME "#?.o" MATCH Note that empty lines and lines starting by a ";" character are ignored. Also note that ABackup automatically stores the state of the recursivity indicator at the beginning of your selection record: if you take a look at the created files, you'll see that they all begin with a "RECURS" command. If you want to be sure to clear a previous selection, it is recommended to start all your selections by clicking on the "Root" gadget and then excluding all the files of the selection. @endnode @node Compatibilite "Compatibility with the previous versions" ABackup has been entirely re-written for this version. Archives created by the previous versions of the program are supported as follow: v1.00-v2.01 you must rebuild the archive catalog v2.10-v2.43 directly supported v3.00-v3.12 NOT SUPPORTED v4.00-v4.09 directly supported Archives crypted by a previous version are NOT supported, whatever version you used for the backup. @endnode @node AppWindow "Application window" When you run ABackup on the Workbench screen, the program's window is automatically set as an "Application Window". If you run ABackup on a public or custom screen, an "Application Icon" is automatically opened on the Workbench screen. This allow you to drop the following icons: Preferences file icon Accepted on the @{" Main window " Link "MainWin"} and the @{" Selection window " Link "SelectionWin"}. The file will immediatly be loaded, and the new parameters taken in account. Archive file or volume Accepted only on the @{" Main window " Link "MainWin"}. The corresponding archive will immediatly be scanned for a restore operation. Directory(ies) or AmigaDOS volume(s) icon(s) Accepted on the @{" Main window " Link "MainWin"}, or the @{" Selection window " Link "SelectionWin"} if the current operation is a backup. The list of the files contained in the corresponding directory(ies) or volume(s) will immediatly be loaded and added to the list of the files to backup. Selection file icon Accepted only on the @{" Selection window " Link "SelectionWin"}. The file will immediatly be loaded, and the selection executed as if you had selected the file with the "Open" item of the "Selection" menu. A double-click on the Application Icon will bring to the front the screen used by ABackup. @endnode @node Merci "Thanks" Some people have helped us, directly or indirectly, to finish this project. So the authors would like to thank: - Gaël Marziou (who lend us he's streamer) - the "AmigaNews" french magazine "AmigaNews" (mostly Michel Castel, for streamer help) - the "AmigaDream" french magazine (for putting ABackup 4.04 on it's cover disk) - Gaël Marziou, Jean-Pierre Rivière, Michel Schinz, Martin Steigerwald (official beta-testers) - Stefan Salewski, Martin Steigerwald, Kersten Emmrich (german translation), Alessandro Basso (italian translation) - everyone who reported bugs or suggested enhancements - and, last but not least, all the people who registered to the previous versions of ABackup. Denis would like to send personnal greetings to Jean-Philippe Rapp (without whom ABackup may have never existed) and to Michel Schinz. Reza would like to send personnal greetings to Michael Berg and Jan van den Baard. While finishing this program, we have a thought for Pierre Carrette, one of the author of BrowserII, who left us in May 1995. @endnode @node Historique "Program history" v5.00, 15-Aug-95, 107332 bytes v5.01, 30-Sep-95, 108388 bytes - Catalog rebuilding was unusuable for archives on floppy disks (terminated without creating the new catalogue) - A few errors corrected in old archive format support (one of these errors made failed backup which where made just after). - Using several units (DF0: and DF1: for example) now works (in v5.00, ABackup couldn't open the second unit, because it's name was overwritten) - Added the "__stackext" directive for all recursive functions, in order to avoid crashes by lack of stack space - Added the ECSUFFIX argument, which let you specify the suffix added by the external compression program (so you may now use LZX) - Do not change now the comment, the icon and the protection bits of archive files, when you do a restore or a verify operation - The message suggesting to verify the backup, when a bad cylinder has been detected, only appears now at the end of the backup - When using a custom screen, the window opened by ABackup was too large, so the screen's menu bar disapeared at the first WindowToFront() call - No more problems when you quit the program, and visitors windows are left on ABackup custom screen (the screen is left opened) - When you ask to rebuild the catalog, ABackup now first display the archive selection window (as for restore or verify), and do not ask any comment for the catalog. - The "Preferences" gadget, on the Monitor window, is wider (the german text did not fit in) - Do not verify now the name of the SCSI driver, in the Preferences program (this was a problem because, if the SCSI port number was not correct, the previous driver name was taken back) @endnode @node FAQ "Frequently Asked Questions" Q:Even though I am a registered user, I still have to reply to the "About" startup request. A:There is no special "registered" version of the program, nor "keyfile" sytem. Everybody has this request, even ABackup authors. Of course, it is not displayed in automatic modes. Q: I've tried to use LZX, with external compression, but it doesn't work. All the files are "Stored", and lots of ".lzx" files are left in the temporary directory. A:If the external compression program adds a suffix to filenames (LZX adds ".lzx"), you must use the ECSUFFIX argument to tell ABackup which suffix is added. Q:At the end of a backup, I had a requester "CAUTION ! Some cylinders on the target drive were defectives !". I thought ABackup could handle this kind of problem, so I would not have to restart the backup again. R:This kind of error is handled by ABackup, which simply marks the bad cylinders as "unusuable", and try to write on the next cylinder. This message is only here to suggest you to perform a verify operation, to make sure the backup is correct (some write errors might have not been detected). @endbase @endnode