Files
scripts/backup_maverick.sh
T
2022-12-18 09:43:26 +01:00

52 lines
1.4 KiB
Bash
Executable File

#!/bin/bash
## Variables
NOW=$(date +"%d-%m-%Y %T")
readonly NOW
BACKUP_SOURCE=/home/sergio
readonly BACKUP_SOURCE
BACKUP_TARGET=/sustancia/maverick/backup
readonly BACKUP_TARGET
LOG="${BACKUP_SOURCE}"/cronjobs/backup_maverick.log
readonly LOG
## Mount all
mount -a
## Start backup
printf "\n\nBACKUP (%s)\n" "${NOW}" | tee "${LOG}"
## Backup system files
printf "\n\n>> BACKUP SYSTEM FILES\n" | tee "${LOG}"
rsync -avh --delete /etc/crontab "${BACKUP_TARGET}" | tee "${LOG}"
rsync -avh --delete /etc/fstab "${BACKUP_TARGET}" | tee "${LOG}"
## Backup files
FILES=".gitconfig .git-credentials"
for FILE in $FILES; do
printf "\n\n>> BACKUP FILES\n" | tee "${LOG}"
if [ -f "${BACKUP_SOURCE}"/"${FILE}" ]; then
rsync -avh --delete "${BACKUP_SOURCE}"/"${FILE}" "${BACKUP_TARGET}" | tee "${LOG}"
fi
done
## Backup folders
FOLDERS="cronjobs docs rgbpi .skyscraper .ssh"
for FOLDER in $FOLDERS; do
if [ -d "${BACKUP_SOURCE}"/"${FOLDER}" ]; then
printf "\n\n>> BACKUP %s\n" "${FOLDER}" | tee "${LOG}"
rsync -avh --delete "${BACKUP_SOURCE}"/"${FOLDER}" "${BACKUP_TARGET}"/"${FOLDER}" | tee "${LOG}"
fi
done
## Backup docker
FOLDER=docker
if [ -d "${BACKUP_SOURCE}"/"${FOLDER}" ]; then
printf "\n\n>> BACKUP %s\n" "${FOLDER}" | tee "${LOG}"
docker stop "$(docker ps -q)"
rsync -avh --delete "${BACKUP_SOURCE}"/"${FOLDER}" "${BACKUP_TARGET}"/"${FOLDER}" | tee "${LOG}"
docker start "$(docker ps -a -q)"
fi