initial commit before setting up the remote
This commit is contained in:
commit
f5e570a776
3 changed files with 61 additions and 0 deletions
3
.gitignore
vendored
Normal file
3
.gitignore
vendored
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
*.conf
|
||||||
|
*~
|
||||||
|
|
36
run-restic.sh
Executable file
36
run-restic.sh
Executable file
|
@ -0,0 +1,36 @@
|
||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
# OER Foundation backup routine: Restic
|
||||||
|
# 20190930 dave@oerfoundation.org
|
||||||
|
#
|
||||||
|
NICE='ionice -c2 nice -n19'
|
||||||
|
CMD=/usr/bin/restic
|
||||||
|
SCR=$0
|
||||||
|
CONF=site.conf
|
||||||
|
DIR=`dirname $SCR`
|
||||||
|
SCRNAME=`basename $SCR`
|
||||||
|
if [ -f $DIR/$CONF ] ; then
|
||||||
|
source $DIR/$CONF
|
||||||
|
else
|
||||||
|
echo "You need to create a site.conf in the same directory as $SCRNAME, i.e. $DIR."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
DST=sftp:try.oerfoundation.org:/backup/make
|
||||||
|
PW=/root/restic.pw
|
||||||
|
TAG="daily"
|
||||||
|
LOG=/var/log/restic.log
|
||||||
|
ARGS="-r $DST --password-file $PW backup --tag $TAG --exclude-file=/restic.excludes --files-from /restic.files"
|
||||||
|
CLEAN="-r $DST --password-file $PW forget --tag $TAG --keep-daily 7 --keep-weekly 5 --keep-monthly 12 --keep-yearly 7"
|
||||||
|
# create a snapshot
|
||||||
|
DATE=`date`
|
||||||
|
echo "running snapshot $DATE" >> $LOG
|
||||||
|
$NICE $CMD $ARGS >> $LOG
|
||||||
|
# remove old snapshots
|
||||||
|
DATE=`date`
|
||||||
|
echo "running cleanup $DATE" >> $LOG
|
||||||
|
$NICE $CMD $CLEAN >> $LOG
|
||||||
|
# leave extra spaces
|
||||||
|
DATE=`date`
|
||||||
|
echo "done $DATE" >> $LOG
|
||||||
|
echo "" >> $LOG
|
||||||
|
echo "" >> $LOG
|
22
site.conf-sample
Normal file
22
site.conf-sample
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
#
|
||||||
|
# this contains secrets for the site.
|
||||||
|
#
|
||||||
|
# The only required field
|
||||||
|
#
|
||||||
|
# local example
|
||||||
|
# replace /backup/myserver with something appropriate for you.
|
||||||
|
DST=/backup/myserver
|
||||||
|
#
|
||||||
|
# remote example
|
||||||
|
# replace backup.server and /backup/myserver with something appropriate for you.
|
||||||
|
# note, for this to work, you will need key-based SSH authentication to the backup.server
|
||||||
|
DST=sftp:backup.server:/backup/myserver
|
||||||
|
#
|
||||||
|
# Other overrides
|
||||||
|
#
|
||||||
|
# your backup repo password
|
||||||
|
PW=/root/restic.pw
|
||||||
|
# a tag for automated backups
|
||||||
|
TAG="daily"
|
||||||
|
# the log file on this machine for logging backups
|
||||||
|
LOG=/var/log/restic.log
|
Loading…
Reference in a new issue