X-Git-Url: https://arthur.barton.de/gitweb/?a=blobdiff_plain;f=README.md;h=47ec27a91819dc27d1d52b6355126ed3deb3e16d;hb=45505be93f5c266f43d34df0d6d2b1e18ababa2b;hp=b74257c1be2e425935a4ce845d62919fb1d012bf;hpb=b0ac6a11a5594d8445d3cd6ba1ec0d56bd21ebcc;p=backup-script.git diff --git a/README.md b/README.md index b74257c..47ec27a 100644 --- a/README.md +++ b/README.md @@ -1,52 +1,74 @@ # Backup Script -A script for cloning systems using rsync. -Copyright (c)2008-2016 Alexander Barton +A script for backing up data using `ssh`(1), `rsync`(1), and `scp`(1). +Can handle backup generations on *btrfs* and *ZFS*. +Copyright (c)2008-2016 Alexander Barton () +Homepage: https://github.com/alexbarton/backup-script + + +## Installation + +Call the scripts located in `./bin` directly from the source folder, or run +`make install` to install them to `/usr/local/sbin`. + +You can set `PREFIX` to use an other path prefix than `/usr/local` like this: +`make PREFIX=/opt/backup-script install`. ## Usage ### backup-script -Backup all or individual systems. +Run all or individual backup jobs. -Usage: `backup-script [] [ [ [...]]]` +Usage: `backup-script [] [ [ [...]]]` Options: - `-n`, `--dry-run`: Test run only, don't copy any data. - `-p`, `--progress`: Show progress, see rsync(1). - `-t TAG`, `--tag TAG`: Only run jobs with tag TAG (see "tags" variable below). -- `x`, `--no-exec`: Don't run global setup-, pre-, and post-exec commands. +- `-x`, `--no-exec`: Don't run global setup-, pre-, and post-exec commands. -When no *system* is given, all defined systems are backed up. +When no *job* is given, all defined jobs are run. ### backup-script-wrapper -Backup all systems and mail the report to "root". +Backup all systems ("run all jobs") and mail the report to "root". -Usage: `backup-script-wrapper []` +Usage: `backup-script-wrapper []` ### backup-status Show information about backups. -Usage: `backup-status [-q] [ [ [...]]]` +Usage: + +- `backup-status [--errors|--latest] [--quick] [ [ [...]]]` +- `backup-status --running` Options: -- `-q`: *quick mode*, don't calculate backup sizes. +- `-e`, `--errors`: only show current backups with errors (implies `--latest`). +- `-l`, `--latest`: only show latest backup generations. +- `-q`, `--quick`: *quick mode*, don't calculate backup sizes. +- `-r`, `--running`: check if an `backup-script` task is currently running. + +When no *job* is given, all defined jobs are listed. ### backup-audit Show "relevant" differences in system configuration between backup generations. -Usage: `backup-audit [-q] [-v] [ [ [...]]]` +Usage: `backup-audit [-q] [-v] [ [ [...]]]` Options: -- `-q`: *quiet mode*, don't show systems without "relevant" changes. -- `-v`: *verbose mode*, show all checks that are run. +- `-d`, `--dirs`: compare two backup directories (not jobs). +- `-q`, `--quiet`: *quite mode*, only list jobs with changes or errors. +- `-v`, `--verbose`: *verbose mode*, show all checks that are run. + +When no *job* is given, all defined jobs are checked. ## Configuration @@ -55,20 +77,20 @@ All default configuration variables are read from the first file found of this list: `/usr/local/etc/backup-scrupt.conf`, `/etc/backup-script.conf` or from `/etc/backup-script.d/backup-script.conf` (deprecated). -All systems which should be backed-up are configured using individual files +All jobs that should be backed-up are configured using individual files in the configuration directory, which is `/usr/local/etc/backup-script.d/` or `/etc/backup-script.d/` by default (whichever is found first), and can be specified using the `conf_d` variable in the main configuration file. -The must be one file for each system to backup (files ending in `*.sh` are +The must be one job file for each system to backup (files ending in `*.sh` are skipped, as well as files named `backup-script.conf`). Please avoid spaces and other "special" characters! The filename is used as hostname for the system by default, but this can be overwritten using the `system` configuration variable. Variables in `backup-script.conf` must be prefixed with `default_` to define -default values for all systems. +default values for all jobs. -All defaults can be overwritten in the individual system configuration files. +All defaults can be overwritten in the individual job configuration files. For example: @@ -135,8 +157,8 @@ Default: "running-config". ### [default_]target -Local backup directory. The backup of each system is stored in a folder named -like the system (see `system` variable) inside of this target directory. +Local backup directory. The backup data of each job is stored in a folder named +like the job (see `system` variable) inside of this target directory. *Note:* There is *no* default, you have to specify this variable, for example as `default_target` in the `backups-script.conf` file! @@ -228,19 +250,20 @@ The following job configurations variables used by the outdated backup-pull(1) script in job definition files are automatically mapped to the new backup-script variables: -* host -> system -* source -> source_root -* pre_exec -> job_pre_exec -* post_exec -> job_post_exec +* `host` -> `system` +* `source` -> `source_root` +* `pre_exec` -> `job_pre_exec` +* `post_exec` -> `job_post_exec` ## Exit codes +- 0: No error, success. - 1: Unspecific Error! - 2: Usage information has been shown. -- 3: Can't read system definition +- 3: Can't read job definition - 4: PID-file exists! - 5: Pre-exec command failed! -- 6: There have been systems with errors! +- 6: There have been jobs with errors! - 7: Not all jobs were run! - 9: Aborted (CTRL-C)!