AutoArchive ver. 0.2.0 ======================= Simple backup utility. Copyright (C) 2003 - 2010 Robert Cernansky Copyright (C) 2003 - 2010 HOME software INFORMATIONS ABOUT PROGRAM ========================== AutoArchive is a simple python script for making backups more easily. It uses tar for creating archives. The idea of the program is that every information needed for making a backup is in one file - the archive spec file (AA_SPEC). Path to this file is passed as a parameter to 'aa' command which reads informations from it and creates desired backup. Command 'autoarchive' is alias for 'aa'; commands are equivalent. Usage ----- aa/autoarchive [options] AA_SPEC... Options: --version show program's version number and exit -h, --help show this help message and exit -v, --verbose Turns on verbose output. -a ARCHIVER, --archiver=ARCHIVER Specify archiver type. Supported types are: ('tar', 'targz', 'tarbz2', 'tarlzma', 'tarxz') (default: tarbz2). -i, --incremental Perform incremental backup. -l LEVEL, --level=LEVEL Specify backup level which should be created. Informations about higher levels will be erased. If not present, creates next level in a row. -c NUM, --compression-level=NUM Compression level. If not specified, default behaviour of underlying compression program will be used. AA_SPEC is an archive spec file. It specifies what should be archived and the archive name. Its standard file name extension is ".aa". For syntax please see 'Archive spec file format' chapter. It is possible to specify multiple ".aa" files. Archive spec file format ------------------------ The AA_SPEC consists of one section named "[General]" under which are all the variables that specifies information about the archive. The variables are written in the "variable_name: value" form -- one variable per line. Lines beginning with "#" or ";" are ignored and may be used for comments. Possible variables are: name Archive name. Created archive will be named according value of this variable plus appropriate extension. path Path to archive root. All paths and file names specified in this archive spec as well as archive content will be taken as relative to this path. include_files List of space separated file or directory names to backup. exclude_files List of space separated file or directory names to be excluded from backup. Values that contains spaces has to be enclosed to "". For all directory or file names standard shell wildcards can be used. Also ~ is expanded to user's home. When specifying the value it is also possible to refer to other variables in the form %(variable_name)s. Example ------- Let's say that we want make a backup of configuration files of all users except user foo. Assume that our system has unix-like style of home directories (directory /home contains directories of all users; configuration files begins with dot). Name of this backup will be 'users-config'. First, create file users-config.aa (it doesn't need to have same name as backup). ----- content of file users-config.aa ----- # AutoArchive file for users configuration files [General] name: users-config path: /home include_files: */.* exclude_files: foo ---------- end of users-config.aa ---------- Then to create the backup just type aa users-config.aa and in current directory will be created archive users-config.tar.bz2. Known bugs ---------- When creating incremental backup, files and directories specified in 'include_files' are always added to archive, even if they did not changed. This is bug/feature of tar. Contacting the author --------------------- Comments, bug reports, wishes about this piece of software are welcomed at e-mail openhs@users.sourceforge.net. Homepage: http://autoarchive.sourceforge.net/.