ABacoD
A Backup daemon
versione italiana
Automatic backup script. Transfers files and directory renaming them with a configurable logic.

Source path can contain wildchars:
  • * :every string
  • ? :every char
  • [...] :one specified char
Destination path can contain:
  • ^n^ :replaced with the result of n-th expansion in source path (starting from 0)
  • ^d^ :replaced with hour/date of the trensfer (the format is configurable)
Accept command line arguments and/or a configuration file. Command line arguments overwrite corresponding configuration files. Append implies deletion of source file. Does not implements loops therefore you must use cron or similar systems.

IMPORTANT NOTE: Abacod deletes files! Testing parameters with the DUMMY (or -t) flag is safety. More safety is run with a user whose rights are the minumum possible.

Download

Abacod v1.4-beta
View files

Syntax

abacod [OPTION] CONFIGFILE"          
  -V, --version                print version
  -h, --help                   print this help
  -v, --verbose                print what is going to do
  -t, --test                   don't touch filesistem, print only
  -p, --srcpath SRCPATH        source path (can use wildchar: *,?,[...])
  -d, --dstpath DSTPATH        destination path:
                                   ^n^ is replaced with n-th wildchar
                                   ^d^ is replaced with current date
  -r, --deletesrc	             delete source
  -i, --ignoredirs             ignore subdirs of srcpath
  -a, --append                 append
  -o, --overwritemode MODE     overwrite mode:
                                  0: never
                                  1: ever
                                  2: only if newer
                                  3: only if bigger
  -m, --maxtransfer AMOUNT     stop after AMOUNT transfer
  -s, --transfersleep SEC      sleep between transfer (default 1)
  --errorsleep SEC             sleep before exit on error (default 30)
  -u, --forcedumask UMASK      umask to use
  --forcedowner ID             set owner ID
  --forcedgroup ID             set group ID
  -e, --dateformat FORMAT      format to use for date (date syntax)
  --testmountpoint MOUNTPOINT  test mountpoint before proceeding
  --testping ADDRESSORNAME     ping this address before proceeding

every command line values overwrites configuration file one
if there is no configuration file command ends with a -

Dependencies

Abacod is a shell script. Use Bash builtins and: date, sleep, mv, rm, du, awk, chowm, chgrp, touch, mkdir, cat.


matteolucarelli.altervista.org