+++ /dev/null
-#!/bin/bash
-
-### Halt on errors
-set -e
-
-### Debug
-#set -x
-
-### General settings
-export PASSPHRASE=s
-export FTP_PASSWORD=s
-FTP_USER=u
-FTP_HOST=h
-LOCKFILE="/var/lock/backup/hetznerbackup"
-
-## Backup job for the dom0 main
-job_main() {
- echo "Backing up main/etc"
- duplicity $BMODE /etc ftp://$FTP_USER@$FTP_HOST/main/etc
- duplicity remove-all-but-n-full 5 --force ftp://$FTP_USER@$FTP_HOST/main/etc
-}
-
-### Backup job for the domU void
-job_void() {
- ### mount all domU partitions
- mount -o ro /dev/vg0/void-root /mnt/backup/void-root
- mount -o ro /dev/vg0/void-home /mnt/backup/void-home
- mount -o ro /dev/vg0/void-var /mnt/backup/void-var
-
- if [ -e /mnt/backup/void-var/lib/automysqlbackup/backupdone ]; then
- MYSQLOK="--include /mnt/backup/void-var/lib/automysqlbackup/backupdone"
- else
- echo "WARNING: It seems that the last mysql backup in the domU void is still runing"
- echo "Skipping mysql backup - please re-schedule"
- fi
-
- echo "Backing up void"
- duplicity $BMODE \
- --exclude /mnt/backup/void-home/tcm \
- --include /mnt/backup/void-root/etc \
- --include /mnt/backup/void-home \
- $MYSQLOK \
- --exclude /mnt/backup \
- /mnt/backup ftp://$FTP_USER@$FTP_HOST/void/
- duplicity remove-all-but-n-full 5 --force ftp://$FTP_USER@$FTP_HOST/void/
-
-
- ### umount all domU partitions
- umount /mnt/backup/void-root /mnt/backup/void-home /mnt/backup/void-var
-}
-
-### check for other runing instances of this script
-if [ -e $LOCKFILE ]; then
- echo "Lockfile $LOCKFILE found - aborting"
- echo "This is a typical result of a failed backup run, please contact your admin"
- exit 5
-else
- touch $LOCKFILE
-fi
-
-### Set the duplicity backup mode we would like to use
-if [[ $(LANG=C; date +%A) =~ Sunday ]]; then
- echo "Runing in full mode"
- BMODE="full"
-else
- echo "Runing in incr mode"
- BMODE="incr"
-fi
-
-### Start the backup jobs
-job_main
-job_void
-
-### remove the lockfile
-rm $LOCKFILE