]> arthur.barton.de Git - backup-script.git/blobdiff - README.md
Unify and enhance usage information and script descriptions
[backup-script.git] / README.md
index c6602d818e80eec8bc4549b88a1fccefaed1b018..f1c1e6ba66abaf294b5695375a70e01573818995 100644 (file)
--- a/README.md
+++ b/README.md
@@ -1,7 +1,8 @@
 # Backup Script
 
 A script for cloning systems using rsync.  
-Copyright (c)2008-2016 Alexander Barton <alex@barton.de>
+Copyright (c)2008-2016 Alexander Barton (<alex@barton.de>)  
+Homepage: https://github.com/alexbarton/backup-script
 
 
 ## Usage
@@ -10,31 +11,54 @@ Copyright (c)2008-2016 Alexander Barton <alex@barton.de>
 
 Backup all or individual systems.
 
-Usage: `backup-script [<options>] [<system> [<system> [...]]]`
+Usage: `backup-script [<options>] [<job> [<job> [...]]]`
 
 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.
 
-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-script-options-and-job-names ...>]`
 
 ### backup-status
 
 Show information about backups.
 
-Usage: `backup-status [-q] [<system> [<system> [...]]]`
+Usage:
+
+- `backup-status [--errors|--latest] [--quick] [<job> [<job> [...]]]`
+- `backup-status --running`
+
+Options:
+
+- `-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] [<job> [<job> [...]]]`
 
 Options:
 
-- `-q`: *quick mode*, don't calculate backup sizes.
+- `-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
@@ -43,20 +67,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:
 
@@ -65,6 +89,19 @@ For example:
 - `/etc/backups-script.d/clientXY.example.com`: configuration for host 2
 
 
+### Global Settings
+
+The following global configuration options exist:
+
+- `setup_exec`: Script to run _before_ creating the lock file etc.
+- `pre_exec`: Pre-execution script, run before all jobs.
+- `post_exec`: Post-execution script, run after all jobs.
+
+In Addition, all job configuration options (see below) that have a "default_XXX"
+variant can be used and define default values for all jobs that don't overwrite
+them individually.
+
+
 ## Configuration Variables
 
 ### system
@@ -83,6 +120,9 @@ Backup type to use. Default: `rsync`.
 - `scp`: file backup using scp(1).
   Use `files` to specify the files to copy.
 
+- `disabled`: job is disabled and will not be run. This becomes accounted as
+  "success" in the summary and exit code of the backup script.
+
 Please note that neither `ssh_args_add`, `rsync_args_add`, `compress`, nor any
 "exclude" parameters are supported when using the "scp" backup type! And There
 "scp" backup type never _deletes_ files from the backup store; so if you reduce
@@ -107,8 +147,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!
@@ -196,8 +236,9 @@ Optional script to execute after `rsync` exited. Default: none.
 
 ### Compatibility Variables
 
-The following configurations variables used by the backup-pull(1) script in job
-definition files are automatically mapped to the new backup-script variables:
+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
@@ -209,9 +250,9 @@ definition files are automatically mapped to the new backup-script variables:
 
 - 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)!