Add auto check functionality

CHECK_INTERVAL or SUB_CHECK_INTERVAL in module settings.
If set to 1, will check everytime.
Ever other number is for n days after last check.

FORCE_CHECK for check if repository has been setup os now renamed
FORCE_VERIFY but FORCE_CHECK is currently still honored but deprecated

all *function* shell scripts will abort if run on their own

Print info on last check time if set in info block

Internal updates:
All separator lines are now printf strings for central control.
All module used config/settings file names use $MODULE name
Check functionality is in its own file
This commit is contained in:
Clemens Schwaighofer
2022-04-25 06:49:57 +09:00
parent 34277483e9
commit 8e87503528
14 changed files with 277 additions and 96 deletions

View File

@@ -63,7 +63,7 @@ print list of archives created
verify if repository exists, if not abort
### `-e`
exit after check
exit after running verify `-V`
### `-I`
init repository (must be run first)
@@ -118,7 +118,8 @@ All below have default values if not set in the main settings file
* COMPRESSION: zstd
* COMPRESSION_LEVEL: 3
* ENCRYPTION: none
* FORCE_CHECK: false
* FORCE_VERIFY: false
* CHECK_INTERVAL: none
* KEEP_LAST: 0
* KEEP_HOURS: 0
* KEEP_DAYS: 7
@@ -130,6 +131,7 @@ All module settings files can have the following prefixed with `SUB_` to overrid
* SUB_BACKUP_FILE
* SUB_COMPRESSION
* SUB_COMPRESSION_LEVEL
* SUB_CHECK_INTERVAL
* SUB_BACKUP_SET
* SUB_KEEP_LAST
* SUB_KEEP_HOURS
@@ -157,6 +159,14 @@ and `TARGET_BORG_PATH="";` if the target borg is in a non default path
`BORG_EXECUTABLE="<full path to borg>"`
## Note on CHECK_INTERVAL and SUB_CHECK_INTERVAL
If set to empty or 0 it will not run an automatic check. If set to 1 it will run a check after each backup. Any other value means days differente to the last check.
Running check manually (`-C`) will not reset the last check timestamp.
Automatic checks always add `--verify-data`, with manual `-C` the option `-y` has to be set.
## File backup settings
On new setups it is recommended to use the `borg.backup.file.setings` and set