Short: Backup Utility AmigaOS Author: blasterreal@gmail.com (Serkan DURSUN) Uploader: blasterreal gmail com (Serkan DURSUN) Type: disk/bakup Version: 0.3 Architecture: m68k-amigaos Distribution: Aminet Backup Vault ============ Version 0.3 A backup / restore / sync / verify utility for AmigaOS 3.x, with a MUI graphical front end (BackupVault) and a matching command-line tool (Backup). A NOTE ON THE VERSION NUMBER ----------------------------- This project was previously released as version 1.0 beta1. Since then I decided to substantially rework both what it does and how it works internally - many of the original routines were rewritten from scratch, and whole new pieces were added that did not exist in 1.0 beta1 at all: the Job/Repository model, two-way and one-way Sync Jobs, a choice of compression algorithms, richer archive metadata, and a unified history log, among others. Given how far the program has moved from that original 1.0 beta1, I did not think it was honest to keep counting up from "1.0" as if this were a direct continuation of that release. So the version numbering was restarted at 0.3, on purpose - not a step backward, but a more accurate baseline for what has, in practice, become a different and still-evolving piece of software. WHAT IT DOES ------------ - Define reusable Backup Jobs (a source + a destination Repository + suffix/compression/check options) and Sync Jobs (two plain directories kept mirrored, one-way or two-way), managed together in one Jobs list. - Back up a directory tree (or a single file) into one archive file, with per-file checksums and a choice of compression. - Two-way or one-way sync between two directories, using a per-job baseline (size/date, falling back to an MD5 content check) to tell "changed" apart from "deleted" apart from "conflicting" - a file changed differently on both sides is never guessed at, only flagged. - Restore an entire archive, or browse its contents and restore only specific files and/or folders. - Verify an existing archive's integrity without restoring anything. - Import a backup archive found anywhere on disk, registering it (and its Repository/Job, if needed) so it shows up in the Restore list. - Keep a small, searchable history of every backup, restore, sync, check, and deletion, with one click through to that run's full log. REQUIREMENTS ------------ - AmigaOS 3.2 (this is what it was built and tested against; earlier 3.x versions may work but have not been tested). - MUI 3.8 or later. - The following third-party MUI custom classes must already be installed on the target system (e.g. in MUI:Libs/mui/): * TabGroup.mcc * NList.mcc / NListview.mcc BackupVault (the GUI) will fail to open its window if either of these is missing. - The command-line tool "Backup" does not need MUI or any custom classes - it only needs dos.library. - Optional: z.library, only if you want the "Deflate" compression choice to actually compress anything (see COMPRESSION below). Not required to run the program at all - without it, a job set to Deflate simply stores its files uncompressed instead. THIS IS BETA-QUALITY SOFTWARE - PLEASE READ BEFORE USING ---------------------------------------------------------- This is early, beta-quality software. It has been tested by the author, but not extensively, and not with large or critical data sets under real-world conditions. BackupVault reads from and writes to your filesystem, including restoring and syncing files that can overwrite or delete existing ones. Like any software, it may contain bugs that could lead to data loss or other damage. Sync Jobs in particular are a new feature, still under active development and long-term testing - see SYNC JOBS below for a more specific warning about them. BY DOWNLOADING, INSTALLING OR RUNNING THIS SOFTWARE, YOU AGREE THAT: - You do so entirely at your own risk, of your own free will, as a voluntary test of beta software. - The author (Serkan Dursun) accepts NO responsibility and NO liability whatsoever for any data loss, data corruption, hardware damage, or any other direct or indirect harm that may result from using this software. - You are responsible for keeping your own independent backups, made with other, proven tools, of anything you care about BEFORE testing this program with it. - This software is provided "AS IS", with NO WARRANTY of any kind, express or implied, including but not limited to fitness for a particular purpose. If you do not agree with the above, do not install or run this software. Bug reports and feedback are very welcome - see CONTACT below. SYNC JOBS - AN ADDITIONAL WARNING ------------------------------------ Sync Jobs are the newest, least battle-tested feature in this program. The program itself will remind you of this - the first time you create a Sync Job, it shows a warning asking you to confirm you understand the risk before it lets you save one. That warning is not a formality: please keep an independent backup of both directories involved in any Sync Job until you have seen it behave correctly on your own data over time. If you hit a problem, please report it (see CONTACT) - that is how this feature gets more trustworthy over time. INSTALLATION ------------ 1. Copy the BackupVault drawer to your Amiga (or a partition of your choice). 2. Make sure TabGroup.mcc and NList.mcc/NListview.mcc are installed (see REQUIREMENTS above). 3. Run "BackupVault" from Workbench or a Shell. The command-line tool "Backup" can be run directly from a Shell - see BackupVault.guide for its syntax. COMPRESSION ----------- Each Backup Job independently chooses one of: - None - files are stored as-is. - LZSS - a small, dependency-free compressor built into the program itself. - Deflate - real zlib compression, via the third-party z.library (see REQUIREMENTS). If z.library is not installed when a Deflate job actually runs, its files are simply stored uncompressed instead - nothing fails, but check the Restore tab's Compression column to see what a given archive actually ended up using. DOCUMENTATION ------------- See BackupVault.guide (AmigaGuide format) for a full description of every screen and feature. Open it with Multiview, or any other AmigaGuide reader. FILES CREATED BY THE PROGRAM ----------------------------- PROGDIR:logs/ - one log file per backup/restore/ sync/check run PROGDIR:BackupVault.catalog - history of past backups/restores/ syncs/checks/deletions PROGDIR:BackupVault.repos - saved Repositories (backup destinations) PROGDIR:BackupVault.jobs - saved Backup Jobs PROGDIR:BackupVault.syncjobs - saved Sync Jobs PROGDIR:BackupVault.sync. - one per Sync Job, its baseline (what both sides looked like after its last successful run) None of these are required for the program to run, and can be deleted freely - you will simply lose your History list and your saved Repositories/Jobs (and, for a Sync Job's own baseline file, its next run will treat every file as new rather than picking up where the last run left off). KNOWN LIMITATIONS ------------------ - Every backup produces a full, standalone archive - there is no incremental backup support. - The built-in LZSS compression is a small, from-scratch implementation, chosen to avoid extra library dependencies. It will not compress as well as Deflate or a dedicated compressor. - Sync Jobs are new and still being tested in real-world use - see SYNC JOBS above. - As beta-quality software, testing so far has been limited - see the disclaimer above. CONTACT ------- Serkan Dursun blasterreal@gmail.com Please include the relevant log file from PROGDIR:logs/ when reporting a problem, if you can. CREDITS ------- Built with SAS/C 6.58 and MUI, using the third-party TabGroup.mcc and NList.mcc/NListview.mcc custom classes. Deflate compression uses the third-party z.library (salass00/z_lib). MD5 (used by Sync Jobs to detect real content changes) is Colin Plumb's 1993 public-domain implementation.