Endlich mal ums Backup kümmern
Code
#############################
# Backup - Client-Part
# Author Tobias Koehler
# Mail: tk1908@gmail.com
# Version 1.5
#############################
#!/bin/bash
# Variablen definieren
paramenter=$a
month=$(date+ %Y-%m)
# Funktionen definieren
function unix_nfs {
if [ -e /data/nexus/Backups/$month/Dokumente ]; then
rsync -avu ${HOME}/Dokumente /data/nexus/Backups/$month/Dokumente
else
mkdir -p /data/nexus/Backups/$month/Dokumente
rsync -avu ${HOME}/Dokumente /data/nexus/Backups/$month/Dokumente
fi
}
function unix_ssh {
rsync -avz ssh ${HOME}/Dokumente backup@nexus.tknet.lan:/data/Backups/$month/Dokumente
}
function rsyncd {
etherwake <MAC-Adresse>
sleep 30
ping -c1 biohazard.tknet.lan > /dev/null
if [$? -ne "0" ]; then
mailx -s "Server nicht erreichbar! Backup fehlgeschlagen!"
exit 1
fi
rsync -avz /data/ backup@biohazard.tknet.lan::backup
ssh -i .ssh/backup_rsa backup@biohazard.tknet.lan "mailx -s "Backup finished! Shutdown has been iniciated at $(date+ %Y-%m-%d-%h-%M); shutdown -h 15""
}
case $parameter in
unix_nfs) unix_nfs()
;;
unix_ssh) unix_ssh()
;;
rsynd) rsynd()
;;
*) echo Es stehen nur die Funktionen unix_nfs, unix_ssh und rsynd zur Verfügung!
;;
Alles anzeigen