Backup Script für auto. full u. incremental Backup auf FTP

Alles rund um sicherheitsrelevante Fragen und Probleme.
Antworten
Benutzeravatar
godmod
Beiträge: 24
Registriert: 20.02.2010 20:58:14
Wohnort: Österreich
Kontaktdaten:

Backup Script für auto. full u. incremental Backup auf FTP

Beitrag von godmod » 16.04.2010 20:19:22

Hallo liebe Debian-Gemeinde :)

Ich habe das Forum schon durchsucht und auch auf Google, nur so richtig fündig wurde ich nicht :(
Aber falls ich was übersehen habe freue ich mich natürlich über einen Link und entschuldige mich dann für den unnötigen Thread!

Zu meinem Problem:
Ich will und muss eine verlässliche Backup Routine einrichten, die einmal in der Woche von bestimmten Ordnern ein verschlüsseltes und gepacktes Full Backup anlegt und die nächsten sechs Tage dann inkrementell sichert. Die entstandenen Archive sollen im Anschluss (natürlich auch automatisch) auf einem FTP-Server abgelegt werden und bei Bedarf die alten Backups löschen (zB. nur das nächst ältere Full Backup vorhalten).
Mit tartarus habe ich es probiert, nur leider hatte ich da so meine Probleme. Also FTP Client habe ich ncftp installiert, vielleicht spielt der nicht mir tartarus zusammen? Ich muss auch sagen, dass ich wirklich nur FTP Zugriff auf den Backup Server habe, also kein SSH oder sonst etwas.
Noch eine Anmerkung: Die Backup Routine, bzw. das Programm sollte relativ resistent gegen langsame/überlastete/kurzzeitigst ausgefallene Verbindung sein. Der Server und der FTP Server sind im selben Netz und mit 100MBit/s verbunden, allerdings machen nachts immer einige ihr Backup...

Ich hoffe, dass sich jemand schon damit beschäftigt hat und mir sein Wissen zu Teil werden lässt :)

Vielen Dank im Vorhinein und schönen Abend!

Lg
Zuletzt geändert von godmod am 17.04.2010 11:20:33, insgesamt 1-mal geändert.
Danke für die Hilfe und die Geduld ;)

Benutzeravatar
godmod
Beiträge: 24
Registriert: 20.02.2010 20:58:14
Wohnort: Österreich
Kontaktdaten:

Re: Backup Script für auto. full u. incremental Backup auf F

Beitrag von godmod » 17.04.2010 10:51:19

Habe derweil ein Script verwendet das nur auf tar aufbaut. Das Problem das ich bei dem Backup heute Nacht hatte, ist dass der Ordner /opt/zimbra eigentlich 32GB hat, das Archiv fs-full-...tar.gz (in dem /var/www auch noch drinnen ist) hat aber nur 16GB. Gibt es da eine Dateigrößenbegrenzung? gibt es auch die möglichkeit das noch zu verschlüsseln und evtl. in handliche 250MB Teile zu splitten?

Ich habe es jetzt man mit folgendem Shell Script probiert

Code: Alles auswählen

#!/bin/sh
# System + MySQL backup script
# Full backup day - Sat (rest of the days do incremental backup)

### System Setup ###
DIRS="/opt/zimbra /var/www"
BACKUP=/tmp/backup.$$
NOW=$(date +"%d-%m-%Y")
INCFILE="/root/tar-inc-backup.dat"
DAY=$(date +"%a")
FULLBACKUP="Sat"

### MySQL Setup ###
MUSER="sqluser1"
MPASS="passwd1234"
MHOST="localhost"
MYSQL="$(which mysql)"
MYSQLDUMP="$(which mysqldump)"
GZIP="$(which gzip)"

### FTP server Setup ###
FTPD="//incremental"
FTPU="ftp0101"
FTPP="passwd1234"
FTPS="ip.ad.dre.ss"
NCFTP="$(which ncftpput)"

### Other stuff ###
EMAILID="admin@domain.tld"

### Start Backup for file system ###
[ ! -d $BACKUP ] && mkdir -p $BACKUP || :

### See if we want to make a full backup ###
if [ "$DAY" == "$FULLBACKUP" ]; then
  FTPD="//full"
  FILE="fs-full-$NOW.tar.gz"
  tar -zcvf $BACKUP/$FILE $DIRS
else
  i=$(date +"%Hh%Mm%Ss")
  FILE="fs-i-$NOW-$i.tar.gz"
  tar -g $INCFILE -zcvf $BACKUP/$FILE $DIRS
fi

### Start MySQL Backup ###
# Get all databases name
DBS="$($MYSQL -u $MUSER -h $MHOST -p$MPASS -Bse 'show databases')"
for db in $DBS
do
 FILE=$BACKUP/mysql-$db.$NOW-$(date +"%T").gz
 $MYSQLDUMP -u $MUSER -h $MHOST -p$MPASS $db | $GZIP -9 > $FILE
done

### Dump backup using FTP ###
#Start FTP backup using ncftp
ncftp -u"$FTPU" -p"$FTPP" $FTPS<<EOF
mkdir $FTPD
mkdir $FTPD/$NOW
cd $FTPD/$NOW
lcd $BACKUP
mput *
quit
EOF

### Find out if ftp backup failed or not ###
if [ "$?" == "0" ]; then
 rm -f $BACKUP/*
else
 T=/tmp/backup.fail
 echo "Date: $(date)">$T
 echo "Hostname: $(hostname)" >>$T
 echo "Backup failed" >>$T
 mail  -s "BACKUP FAILED" "$EMAILID" <$T
 rm -f $T
fi
Danke für die Hilfe und die Geduld ;)

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Backup Script für auto. full u. incremental Backup auf F

Beitrag von rendegast » 17.04.2010 16:50:17

/opt/zimbra eigentlich 32GB hat, das Archiv fs-full-...tar.gz (in dem /var/www auch noch drinnen ist) hat aber nur 16GB
Durch das Komprimieren? Oder meinst Du das entpackte Archiv?

Eventuell hat der das Script ausführende Benutzer nicht auf alle Teile der Verzeichnisse Zugriff?
(Untermounts, verlinkte Verzeichnisse)
Vergleich mit dem entpackten Archiv gemacht?
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

Benutzeravatar
godmod
Beiträge: 24
Registriert: 20.02.2010 20:58:14
Wohnort: Österreich
Kontaktdaten:

Re: Backup Script für auto. full u. incremental Backup auf F

Beitrag von godmod » 17.04.2010 18:00:04

Totales Brett vor dem Kopf! Ich checke mal ab wie groß das entpackte Archiv ist :idea:
Verschlüsselt ist es ja leider noch nicht, das wäre noch zu machen.
edit: die unterschiedliche Größe war auf die Komprimierung zurückzuführen. So gesehen funktioniert es.
Wäre noch toll wenn mir jemand einen Tip zum Thema Verschlüsseln geben könnte :)
Danke für die Hilfe und die Geduld ;)

Benutzeravatar
godmod
Beiträge: 24
Registriert: 20.02.2010 20:58:14
Wohnort: Österreich
Kontaktdaten:

Re: Backup Script für auto. full u. incremental Backup auf F

Beitrag von godmod » 31.05.2010 09:03:47

Das script funktioniert absolut super und zuverlässig.
Hat vielleicht noch jemand eine Idee wie ich dann noch austomatisiert die alten Backups am server löschen lassen könnte?
So, dass dann nur noch ein aktuelles full backup und die folgenden inkrementellen vorhanden sind?
Danke für die Hilfe und die Geduld ;)

roli
Beiträge: 3174
Registriert: 10.09.2003 17:39:58

Re: Backup Script für auto. full u. incremental Backup auf F

Beitrag von roli » 31.05.2010 09:16:51

godmod hat geschrieben:Hat vielleicht noch jemand eine Idee wie ich dann noch austomatisiert die alten Backups am server löschen lassen könnte?
So, dass dann nur noch ein aktuelles full backup und die folgenden inkrementellen vorhanden sind?
cron und find sollten's richten
Roland


"Aber wenn du schon so unwissend bist, davon noch nicht gehört zu haben,
so will ich es doch als gut ansehen, daß du lieber einmal töricht fragst,
als weiterhin nichts von etwas zu wissen, das man doch wissen sollte."
aus "Die Edda des Snorri Sturluson", "Gylfis Täuschung"

Benutzeravatar
godmod
Beiträge: 24
Registriert: 20.02.2010 20:58:14
Wohnort: Österreich
Kontaktdaten:

Re: Backup Script für auto. full u. incremental Backup auf F

Beitrag von godmod » 31.05.2010 09:46:49

Danke. Kann ich mit find ein FTP Verzeichnis durchsuchen?
Danke für die Hilfe und die Geduld ;)

Antworten