inkrementielles backupscript...

Bash, Shell, PHP, Python, Perl, CGI
Anonymous

inkrementielles backupscript...

Post by Anonymous »

hi allerseits...

gibt ja schon einige backup-scripts hier drin, aber ich habe noch keines gesehen das inkrementielle backups macht. wenn man sich backups per mail schicken lässt ist das natürlich überflüssig, aber bei grossen datenmengen ist das schnell unpraktikabel...

wie auch immer, hier ein inkrementielles backupscript, vielleicht isses ja für jemand nützlich ;-)

1. "dobackup"

Code: Select all

#!/bin/sh

# wochentag holen (0=sonntag)
DAY=`date '+%w'`                # wochentag holen (0=sonntag)
FROMDIR=usr/local/httpd         # verzeichnis das gesichert werden soll (komplett), achtung: kein / vorne dran!
TODIR=/backupusr                # verzeichnis in das das backup gespeichert werden soll

# full backup montag nacht
if [ $DAY = 1 ] ; then
        rm -f ${TODIR}/snapshot
fi

# file-zähler zurücksetzen (bei gesplitteten archiven mit gesamt >2 GB)
echo 0 >${TODIR}/volno

# archivierung - bei files > 2 GB übernimmt skript "nvscript" umbenennung
tar -cpMf ${TODIR}/backup.tar --listed-incremental=${TODIR}/snapshot --info-script=${TODIR}/nvscript --volno-file=${TODIR}/volno --directory / $FROMDIR

# letztes archiv auch noch umbenennen, wie in nvscript...
mv -f ${TODIR}/backup.tar ${TODIR}/backup$DAY-$((`cat ${TODIR}/volno`+1)).tar
2. "nvscript"

Code: Select all

#!/bin/sh

TODIR=/backupusr                # verzeichnis in das das backup gespeichert werden soll

mv -f ${TODIR}/backup.tar ${TODIR}/backup`date '+%w'`-`cat ${TODIR}/volno`.tar
letzteres "nvscript" benennt das aktuelle .tar um, wenn die datei-grenze erreicht wurde (2GB? bei 2.4-kerneln nich mehr?). "tar" erzeugt eine datei "snapshot" in der gespeichert ist, welche dateien bereits im backup sind und eine datei "volno" die bei mehreren tar-dateien mitzählt.

das ganze wird durch einen eintrag in die crontab jede nacht aufgerufen

Code: Select all

0 2 * * *       root    /backupusr/dobackup
das verzeichnis in das die backups gespeichert werden is bei mir ne eigene partition, is zwar nich das nonplus-ultra, aber bei grossen datenmengen ein brauchbarer kompromiss zum schicken auf einen anderen rechner...


grüsse,

christoph...


ps: prima forum hier, hat mir schon viel geholfen!

pps: mein erster eintrag, nich gleich hauen, wenn was falsch is ;-)
adjustman
Posts: 1132
Joined: 2003-03-26 23:29
Location: SA

Re: inkrementielles backupscript...

Post by adjustman »

@Christoph Bergmann

hab Dein Sript im Einsatz. Funzt wunderbar. Was mich nur wundert: Alle Aktivitäten von Cron krieg ich per Mail mitgeteilt, nicht so die dieses Scripts! ?? Hast Du da ne Erklärung ? ( oder jemand anders? ) :wink:
cu aM
thelaw
Posts: 53
Joined: 2002-07-30 18:53
Location: Salzgitter

Re: inkrementielles backupscript...

Post by thelaw »

habe das script jetzt nicht analysiert, aber wenn keine ausgabe stattfindet, verschickt cron auch keine mails.
adjustman
Posts: 1132
Joined: 2003-03-26 23:29
Location: SA

Re: inkrementielles backupscript...

Post by adjustman »

nun ich habe auch ein Script laufen, was die Datenbanken sichert. Dort findet auch keine Ausgabe statt und Cron schickt immer fein sein ok für den Job. ??
cu aM
thelaw
Posts: 53
Joined: 2002-07-30 18:53
Location: Salzgitter

Re: inkrementielles backupscript...

Post by thelaw »

vielleicht steht da doch was drin... weiß nicht wie das bei leeren ausgaben oder nur newlines aussieht.
aber wenn da schon nur ok drinsteht, dann wäre das auch ne ausgabe! habe von cron zumindest noch keine leeren mails erhalten.
adjustman
Posts: 1132
Joined: 2003-03-26 23:29
Location: SA

Re: inkrementielles backupscript...

Post by adjustman »

Du kannst ja mal kurz auf das Script schauen, wenn es Deine Zeit erlaubt. :) Evtl. siehst Du ja was, was man ändern könnte. Ich hätt schon gern`n OK vom Cron.
cu aM
thelaw
Posts: 53
Joined: 2002-07-30 18:53
Location: Salzgitter

Re: inkrementielles backupscript...

Post by thelaw »

könnte aber nervig werden, wenn das script alle 1, 10 oder 60 Minuten ausgeführt wird.

Für ein einfaches ok einfach nen

Code: Select all

echo "done."
oder so an das ende des scripts kannst wenn du willst auch noch rückgabewerte der programme abfragen. ansonsten sisses ok, wenn die programme selbst keien fehlermeldungen ausgeben
adjustman
Posts: 1132
Joined: 2003-03-26 23:29
Location: SA

Re: inkrementielles backupscript...

Post by adjustman »

ok, werds gleich mal testen. Danke.
cu aM
adjustman
Posts: 1132
Joined: 2003-03-26 23:29
Location: SA

Re: inkrementielles backupscript...

Post by adjustman »

Christoph Bergmann wrote:gibt ja schon einige backup-scripts hier drin, aber ich habe noch keines gesehen das inkrementielle backups macht
is ja schon ein Weilchen her, :wink: aber kann man das auch auf 14 Tage erweitern? Also: Montags Fullbackup, die Tage drauf inkrementiell. Dann wieder Montags Full, aber das alte in Ruhe lassen, usw.
Ich hoffe, ich habe mich verständlich ausgedrückt. :-D
phillux
Posts: 80
Joined: 2004-03-16 13:47
Location: Münster

Re: inkrementielles backupscript...

Post by phillux »

Warum nicht reoback?
adjustman
Posts: 1132
Joined: 2003-03-26 23:29
Location: SA

Re: inkrementielles backupscript...

Post by adjustman »

Phillux wrote:Warum nicht reoback?
siehe http://www.rootforum.org/forum/viewtopic.php?t=34656