]> arthur.barton.de Git - backup-script.git/blobdiff - README.md
Fix and mark several notices & warnings of shellcheck(1)
[backup-script.git] / README.md
index 2a1fca1676bc4581abe6583979c7f25efdbb5cb0..6aa60264aadb33a77796ebdbf8781f93ff825ab8 100644 (file)
--- a/README.md
+++ b/README.md
@@ -14,8 +14,9 @@ Usage: `backup-script [<options>] [<system> [<system> [...]]]`
 
 Options:
 
-- `-p`, `--progress`: Show progress, see rsync(1).
 - `-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).
 
 When no *system* is given, all defined systems are backed up.
 
@@ -23,7 +24,7 @@ When no *system* is given, all defined systems are backed up.
 
 Backup all systems and mail the report to "root".
 
-Usage: `backup-script-wrapper`
+Usage: `backup-script-wrapper [<backup-script-options-and-systems ...>]`
 
 ### backup-status
 
@@ -35,6 +36,17 @@ Options:
 
 - `-q`: *quick mode*, don't calculate backup sizes.
 
+### backup-audit
+
+Show "relevant" differences in system configuration between backup generations.
+
+Usage: `backup-audit [-q] [-v] [<system> [<system> [...]]]`
+
+Options:
+
+- `-q`: *quiet mode*, don't show systems without "relevant" changes.
+- `-v`: *verbose mode*, show all checks that are run.
+
 
 ## Configuration
 
@@ -64,6 +76,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
@@ -82,6 +107,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
@@ -99,7 +127,7 @@ Remote *root* directory, must end with a slash ("/") character! Default: "/".
 When saving the whole (remote) system ("/"), default excludes are set up
 automatically, which exclude standard system directories like /sys and /proc.
 
-### [default_]file
+### [default_]files
 
 Space separated list of files to copy when using the "scp" `backup_type`.
 Default: "running-config".
@@ -166,6 +194,22 @@ Supported file systems are:
 The latest snapshot is always reachable using a symlink named `latest`
 inside the system directory.
 
+### [default_]io_timeout
+
+The maximum I/O timeout in seconds. If no data is transferred for the specified
+time then rsync will abort. Default: 1800 (30 minutes).
+
+### [default_]tags
+
+Comma-separated list of tags of this job. All uppercase tag names are reserved
+and become set automatically on runtime:
+
+- NONE: Jobs with no other tags at all.
+- ALL: Matches all jobs, regardless of their tags (see `-t`/`--tags` option).
+- LOCAL: All jobs running on "localhost".
+
+Default: NONE.
+
 ### [default_]job_pre_exec
 
 Optional script to execute before `rsync` starts. Default: none.
@@ -179,8 +223,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