Update backups for borg/rclone/b2
This commit is contained in:
parent
4a70a6217b
commit
b79a0d94ce
|
@ -1,14 +1,17 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# rsync all the machines to /data/backup/pool_*
|
||||
hosts=( potato.home pi3.home pi4.home petroc tudy austell )
|
||||
HOST="piran"
|
||||
DEST_LOCAL="/backup/borg_lab"
|
||||
DEST_REMOTE="gwinear.home.randomroad.net:/data/borg_lab"
|
||||
DEST_RCLONE="b2:randomroad-lab"
|
||||
SOURCE_HOSTS=( pine.home pi3.home pi4.home )
|
||||
|
||||
if [ $(hostname -s) != "piran" ]; then
|
||||
echo "Must be run from piran"
|
||||
if [ $(hostname -s) != "${HOST}" ]; then
|
||||
echo "Must be run from ${HOST}"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
for host in "${hosts[@]}"
|
||||
for host in "${SOURCE_HOSTS[@]}"
|
||||
do
|
||||
echo "Updating pool for ${host}..."
|
||||
rsync -a --delete \
|
||||
|
@ -19,10 +22,19 @@ do
|
|||
--exclude "/tmp" \
|
||||
--exclude "/kern" \
|
||||
--exclude "/var/lib/docker" \
|
||||
"root@${host}.randomroad.net:/" "/data/backup/pool_lab_${host}"
|
||||
"root@${host}.randomroad.net:/" "/backup/pool_lab_${host}"
|
||||
done
|
||||
|
||||
DEST="/data/backup/borg_lab"
|
||||
echo "Creating borg backup..."
|
||||
borg create -s --progress "${DEST}::$(date '+%Y%m%d-%H%M')" /data/backup/pool_lab_*
|
||||
echo "Local Backup to ${DEST_LOCAL}"
|
||||
borg create -s --progress "${DEST_LOCAL}::$(date '+%Y%m%d-%H%M')" /backup/pool_lab_*
|
||||
|
||||
echo "Rsync to ${DEST_REMOTE}"
|
||||
rsync -avx --delete --progress "${DEST_LOCAL}" "${DEST_REMOTE}"
|
||||
|
||||
echo "Rclone to ${DEST_RCLONE}"
|
||||
rclone sync "${DEST_LOCAL}" "${DEST_RCLONE}" --progress
|
||||
|
||||
echo
|
||||
echo DONE
|
||||
echo
|
||||
|
||||
|
|
24
bin/backup_piran.sh
Executable file
24
bin/backup_piran.sh
Executable file
|
@ -0,0 +1,24 @@
|
|||
#!/usr/bin/env bash
|
||||
HOST="piran"
|
||||
DEST_LOCAL="/backup/borg_${HOST}"
|
||||
DEST_REMOTE="gwinear.home.randomroad.net:/data/borg_${HOST}"
|
||||
DEST_RCLONE="b2:randomroad-${HOST}"
|
||||
SOURCES="/home /etc /var /data"
|
||||
|
||||
if [ $(hostname -s) != "${HOST}" ]; then
|
||||
echo "Must be run from ${HOST}"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
echo "Local Backup to ${DEST_LOCAL}"
|
||||
sudo borg create -s --progress "dave@127.0.0.1:${DEST_LOCAL}::$(date '+%Y%m%d-%H%M')" ${SOURCES}
|
||||
|
||||
echo "Rsync to ${DEST_REMOTE}"
|
||||
rsync -avx --delete --progress "${DEST_LOCAL}" "${DEST_REMOTE}"
|
||||
|
||||
echo "Rclone to ${DEST_RCLONE}"
|
||||
rclone sync "${DEST_LOCAL}" "${DEST_RCLONE}"
|
||||
|
||||
echo
|
||||
echo DONE
|
||||
echo
|
Loading…
Reference in New Issue
Block a user