LÃ?SUNG BACKUPscript MIT 7 Tage FTP ARCHIVIERUNG

Backup, Restore und Transfer von Daten
mepox
Posts: 4
Joined: 2003-06-08 15:20
 

LÃ?SUNG BACKUPscript MIT 7 Tage FTP ARCHIVIERUNG

Post by mepox »

Dieses Bash Script packt und kopiert Verzeichnisse auf einen FTP Server.
Dabei werden Defoult 2 Tage local und 7 Tage remote arschiviert

viel Spass damit

Den Cron Job nicht vergessen ;)

Code: Select all

#!/bin/bash
#
# Backupscript
# This Script ist Freeware GPL
#
# Autor MrJung  hmbsd by web.de 
#
#########################
 BACKUPDIR="/backup/backupscript"  #local
 RBACKUPDIR="/backupscript" # remote
 FTPSERVER=
 MYUSER=
 MYPASS=
 FUSER=
 FPASS=
##########################

# Wochentag abfragen
 WOTAG=`date +%a`
 WOTAG1=`date +%A`
 DTIME=`date +%H%M`

# Was war Gestern
if [ $WOTAG1 = "Montag" ]; then
     DEL="Sa"
 elif [ $WOTAG1 = "Dienstag" ]; then
     DEL="So"
 elif [ $WOTAG1 = "Mittwoch" ]; then
     DEL="Mo"
 elif [ $WOTAG1 = "Donnerstag" ]; then
     DEL="Di"
 elif [ $WOTAG1 = "Freitag" ]; then
     DEL="Mi"
 elif [ $WOTAG1 = "Samstag" ]; then
     DEL="Do"
 elif [ $WOTAG1 = "Sonntag" ]; then
     DEL="Fr"
 else
 exit 1
fi
# verzeichnisse anlegen
 mkdir -p /$BACKUPDIR/$WOTAG/mysql
 mkdir -p /$BACKUPDIR/$WOTAG/www
 mkdir -p /$BACKUPDIR/$WOTAG/log
 mkdir -p /$BACKUPDIR/$WOTAG1
# sycronisieren
if ( test -d /$BACKUPDIR/$WOTAG ) then
 rsync -az  --delete --delete-after /var/www /$BACKUPDIR/$WOTAG
 rsync -az  --delete --delete-after /etc /$BACKUPDIR/$WOTAG
 rsync -az  --delete --delete-after /var/log /$BACKUPDIR/$WOTAG
else
echo ""
fi

# MySql Dump erstellen
if ( test -d /$BACKUPDIR/$WOTAG/mysql ) then
  cd /$BACKUPDIR/$WOTAG/mysql
  mysqldump -AaCceQ -u$MYUSER -p$MYPASS -r mysql.dbs
else
echo ""
fi

ALL=$WOTAG"_all"
# Tar File erstellen
  cd /$BACKUPDIR/$WOTAG
  tar czf /$BACKUPDIR/$WOTAG1/$WOTAG1.mysql.$DTIME.tar.gz mysql
  tar czf /$BACKUPDIR/$WOTAG1/$WOTAG1.www.tar.gz www
  tar czf /$BACKUPDIR/$WOTAG1/$WOTAG1.etc.tar.gz etc
  tar czf /$BACKUPDIR/$WOTAG1/$WOTAG1.log.tar.gz log
  cd /$BACKUPDIR/
  tar czf /$BACKUPDIR/$ALL.$DTIME.tar.gz $WOTAG1
  rm -r /$BACKUPDIR/$WOTAG1* || echo ""

 # Backup erstellen
  cd /$BACKUPDIR
 if (  ncftpput  -u $FUSER -p $FPASS $FTPSERVER /$RBACKUPDIR/ *$DTIME* ) then
rm -r /$BACKUPDIR/$DEL || echo ""
else

fi

exit 0
#
#
#
ag
Posts: 89
Joined: 2004-07-25 00:17
 

Re: LÃ?SUNG BACKUPscript MIT 7 Tage FTP ARCHIVIERUNG

Post by ag »

Hey

export LANG="de_DE"

sollte noch gesetzt werden (falls nicht schon ist). Sonst kommen bei date die engl. Wochentage raus und die vertragen sich nicht mit dem Script.
...und beim der Variablen $BACKUPDIR sollte ein Slash weniger stehen... weils bei den Befehlen schon vorhanden ist. (Pfade mit // dürfte es nicht geben)

By AG
Anonymous
 

Re: LÃ?SUNG BACKUPscript MIT 7 Tage FTP ARCHIVIERUNG

Post by Anonymous »

Hallo...,

falls ich hier falsch sein sollte, oder es die Frage zum Xten Mal bereits gestellt
wurde, dann... SORRY!
Ich klemm mich hier in den thread, da ich Hilfe zur 7-Tage Archivierung brauche.
Nun zur Sache...

Ich will in einer Agentur einen Debian "Etch" Fileserver aufsetzen.
Bereits gebaut ist folgende Hardwarekonstellation

MB: Asus P5GC-MX i945 ICH7
CPU: E4500 C2D
Ram: Corsair TWIN2X2048-667-C4
Con: Promise TX4310
HDD: Smsung HD250HJ x4 (Raid 10)

Auf diesem Rechner werden verschiedene Benutzerklassen diverse
Architekturprojekte bearbeiten und die Kiste ist dezentralisiert,
sprich nicht am i-Net.
Jetzt moechte ich eine externe Festplatte oder ext.Raid-Kombination
per USB für die Backuplösung nutzen.
Die wie folgt aussehen soll:
Die Projekte sollen jede Stunde in den jeweiligen Wochentag (inkrementell) gesichert werden.
Dabei sollen die Projekte in der darauffolgenden Woche wieder überschrieben oder
inkremetell ersetzt werden. Was auch super wäre, dass falls der letzte den Server ausschaltet
die Jobs (falls mittendrin, da volle Stunde) erst abgearbeitet werden, bevor die Maschine off geht.

Meine Frage wäre jetzt ob dies genauso umsetzbar ist, wenn ja mit welchen
Mitteln und falls jemand bereits so eine oder ähnliche Lösung hat, ob
er bereit wäre mir (ich gehe davon aus, dass dies durch ein Script passiert) sein Script
zu überlassen. Meine Linux-Kentnisse sind relativ mau, aber ich häng mich gern rein und hab
die ein oder andere zeile Code schon verfasst.
Ich dank euch schonmal DICK im Voraus.
Gr33tz spl33n