]> gitweb.hhaalo.de Git - simple-backup.git/commitdiff
add: comments
authorBastian Dehn <hhaalo@arcor.de>
Fri, 13 Jan 2017 17:01:53 +0000 (18:01 +0100)
committerBastian Dehn <hhaalo@arcor.de>
Fri, 13 Jan 2017 17:01:53 +0000 (18:01 +0100)
backup-einfach.sh
backup.sh

index 76423c05c1b41eca92c88f9af39a8410f05aefb1..33aa9f04f94bd13b14c3d937bccd8fb8df54910f 100755 (executable)
@@ -2,10 +2,8 @@
 
 # Informationen fuer den Sicherungsserver
 sicherungspfad="/images/backup"
-sicherungsname="einfach-sicherung"
+sicherungsordner="einfach-sicherung"
 
-# Sicherungsordnernamen 
-sicherungsordner="$sicherungsname"
 # Sicherungsordner auf dem Sicherungsserver erstellen
 if [ ! -d $sicherungspfad/$sicherungsordner ]
 then
@@ -15,13 +13,15 @@ fi
 for remoterechner in $(cat rechner.txt)
 do
        remoteuser="root"
-       # Sicherungsordner auf dem Sicherungsserver erstellen
+       # Sicherungsordner vom Remote-Host
+       # auf dem Sicherungsserver erstellen
        if [ ! -d $sicherungspfad/$sicherungsordner/$remoterechner ]
        then
                mkdir $sicherungspfad/$sicherungsordner/$remoterechner
        fi
 
-       # Sicherung fuer die jeweils angegebenen Pfade in pfad.txt erstellen inkl. logs
+       # Sicherung fuer die jeweils angegebenen Pfade
+       # in pfad.txt erstellen inkl. logs
        for pfad in $(cat pfad-$remoterechner.txt)
        do
                echo
index b13160799f4defc964d2942ae10fb13a1971262f..bf7459e343dee27a42898a5fbf45ff4b8192c2f8 100755 (executable)
--- a/backup.sh
+++ b/backup.sh
@@ -5,7 +5,8 @@ sicherungspfad="/images/backup"
 sicherungsname="sicherung"
 wunschanzahl=20
 
-# Sicherungsordnernamen generieren und Vorsicherungsordnername generieren
+# Sicherungsordnernamen generieren
+# und Vorsicherungsordnername ermitteln
 sicherungsordner="$(date +%Y-%m-%d)"_"$sicherungsname"
 vorsicherungsordner="$(date -d "1 Day ago" +%Y-%m-%d)"_"$sicherungsname"
 if [ ! -d $sicherungspfad/$vorsicherungsordner ]
@@ -13,20 +14,26 @@ then
        tmpordner=$(find $sicherungspfad -maxdepth 1 -type d -name "*_"$sicherungsname"" | sort | tail -n 1)
        vorsicherungsordner=${tmpordner##*/}
 fi
+
 # Sicherungsordner auf dem Sicherungsserver erstellen
 mkdir $sicherungspfad/$sicherungsordner
 
 for remoterechner in $(cat rechner.txt)
 do
        remoteuser="root"
-       # Sicherungsordner auf dem Sicherungsserver erstellen
+       # Sicherungsordner fuer den Remote-Host erstellen
        mkdir $sicherungspfad/$sicherungsordner/$remoterechner
 
-       # Sicherung fuer die jeweils angegebenen Pfade in pfad.txt erstellen inkl. logs
+       # Sicherung fuer die jeweils angegebenen Pfade
+       # in pfad.txt erstellen inkl. logs
+       # bzw. KVM HD Sicherung erstellen
        for pfad in $(cat pfad-$remoterechner.txt)
        do
                if [ "$pfad" == "virsh" ]
                then
+                       # Sicherung von KVM virtuellen Maschinen
+                       # Online VMs werden heruntergefahren, gesichert und dann wieder hochgefahren
+                       # Offline VMs werden direkt gesichert
                        onlineVM=$(ssh $remoteuser@$remoterechner virsh list --name)
                        offlineVM=$(ssh $remoteuser@$remoterechner virsh list --all | grep 'shut off' | awk '{print $2}')
                        for VM in $onlineVM
@@ -52,13 +59,14 @@ do
                                Disks=$(ssh $remoteuser@$remoterechner virsh domblklist $VM --details | grep disk | awk '{print $4}')
                                for Disk in $Disks
                                do
-                                       echo
                                        echo "Disk $Disk von $VM wird gesichert"
                                        echo
                                        rsync -avR --progress --log-file=$sicherungspfad/$sicherungsordner/$remoterechner/backup-$(echo $Disk | sed 's/\//-/g').log --link-dest=$sicherungspfad/$vorsicherungsordner/$remoterechner $remoteuser@$remoterechner:$Disk $sicherungspfad/$sicherungsordner/$remoterechner
                                done
                        done
                else
+                       # Dateipfade werden gesichert
+                       # Es werden Dateien mit *.qcow2 und *.raw ingnoriert
                        echo
                        echo "Rechner $remoterechner; Pfad $pfad wird gesichert"
                        echo
@@ -67,9 +75,9 @@ do
        done
 done
 
-##############################
-
-# Aeltere Sicherungen loeschen
+# Die Anzahl der Backups wird ermittelt
+# Alte Backups werden geloesch
+# falls mehr als die Wunschanzahl vorhanden sind
 backupanzahl=$(ls -d $sicherungspfad/*/ | grep "_$sicherungsname" | sort | wc -l)
 loeschanzahl=$(($backupanzahl - $wunschanzahl))