You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

49 lines
2.3 KiB
Bash

#!/bin/bash
# RUN EACH BACKUP SCRIPT IN HERE AS ITS OWN CRONJOB!!!!!
# Every hour # Don't add this script though, just as example
# 0 0/1 * * * /home/nathan/git/scripts/backup/borg/rn3/backup.sh
# At 2am
# 0 2 * * * /home/nathan/git/scripts/backup/borg/rn3/backup.sh
# Ensure borg_avps is in .ssh/config # and that server has borg user (with perms for server directories)
# sudo apt install acl && wget https://github.com/borgbackup/borg/releases/download/1.2.4/borg-linux64
# https://borgbackup.readthedocs.io/en/stable/installation.html#pyinstaller-binary
# sudo cp borg-linux64 /usr/local/bin/borg && sudo chown root:root /usr/local/bin/borg && sudo chmod 755 /usr/local/bin/borg && sudo ln -s /usr/local/bin/borg /usr/local/bin/borgfs
# Also follow comments above each script
# sudo adduser borg # useradd probably best, don't need a /home/ right?
# (borgBackups)
# source /path/to/script # Uses current script process/vars
# /bin/bash /path/to/script # Runs script as seperate process
# DOCKER BACKUP # change nathan to whoever is running the script on host
# sudo setfacl -Rdm "u:nathan:rX" /home/nathan/docker && sudo setfacl -Rm "u:nathan:rX" /home/nathan/docker
# sudo groupadd docker ; sudo usermod -aG docker nathan # If docker group exist, the next command will still run ;
/bin/bash /home/nathan/git/scripts/backup/borg/docker_backup.sh \
-c "anetwork.uk aney.co.uk dokuwiki gitea homepage mariadb npm planka uptimekuma vaultwarden" \
-d /home/nathan/docker \
-b /home/nathan/BACKUP \
-r borg_avps \
-R /home/nathan/BACKUP/rn3/docker
# WEBSITE DIRECTORY # All sites together for this one (look at seperating in future)
# /bin/bash /home/nathan/git/scripts/backup/borg/directory_backup.sh \
# -d "/home/nathan/websites" \
# -b /home/nathan/BACKUP/dir \
# -r pi2 \
# -R /home/nathan/BACKUP/rn3/website
# Maria/mysql Database backup
# /bin/bash /home/nathan/docker/mariadb/scripts/backup.txt
# Cronjob backup # change nathan to whoever is running the script on host
# Requires permissions of /var/spool/cron/crontabs (rX, X for directories only, so they can be opened)
# sudo setfacl -Rdm "u:nathan:rX" /var/spool/cron/crontabs && sudo setfacl -Rm "u:nathan:rX" /var/spool/cron/crontabs
/bin/bash /home/nathan/git/scripts/backup/borg/directory_backup.sh \
-d /var/spool/cron/crontabs \
-b /home/nathan/BACKUP/cron \
-r pi2 \
/home/nathan/BACKUP/rn3/cron