LÃ?SUNG BACKUPscript MIT 7 Tage FTP ARCHIVIERUNG
Posted: 2006-01-04 21:14
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 ;)
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
#
#
#