40_Cronjob.md
Backup
To start a daily backup at 23:03:
$ cat /etc/cron.d/client-backup
3 23 * * * root /opt/imlbackup/client/backup.sh >/dev/null 2>&1
... or with using the cronwrapper
see
TTL is 1440 for 1440 min = 1d
$ cat /etc/cron.d/client-backup
3 23 * * * root /usr/local/bin/cronwrapper.sh 1440 /opt/imlbackup/client/backup.sh 'iml-backup'
Prune and verify
By default prune and verify are executed on each backup run. This is a safe way. A very safe way.
BUT: By doing this the backup with Restic is running for a few seconds and prune + verify take a much-much longer time. In many cases it is a good idea to split backup and prune + verify.
Example:
You want to start a daily (or hourly) backup. Pruning and verify shall run on Saturday and Sunday.
In jobs/transfer.job set a limit greater 7 days:
prune-after = 14
verify-after = 14
Then define your weekly yobs on Saturday and Sunday.
$ cat /etc/cron.d/client-backup
3 23 * * * root /usr/local/bin/cronwrapper.sh 1440 /opt/imlbackup/client/backup.sh 'iml-backup'
7 18 * * 6 root /usr/local/bin/cronwrapper.sh 1440 /opt/imlbackup/client/prune.sh 'iml-backup-prune'
7 18 * * 0 root /usr/local/bin/cronwrapper.sh 1440 /opt/imlbackup/client/verify.sh 'iml-backup-verify'
Desktop notification
If you don't run the backup on a server but on a client you can activate the desktop notification for a user that is logged in.
Set a variable SUPER_USER=<USERNAME>
in your cron file.
Example:
$ cat /etc/cron.d/client-backup
SUPER_USER=axel
*/17 * * * root /usr/local/bin/cronwrapper.sh 1440 /opt/imlbackup/client/backup.sh 'iml-backup'