Seite 1 von 1

root server backup...

Verfasst: Montag 3. Juli 2006, 08:10
von jens
Ich hab mir mittlerweile doch einen echten root Server zugelegt... Nun bastel ich mir gerade SH Skripte um ein Backup zu erstellen.

Ein vollbackup mit tar dauert allerdings ewig. Mich stört außerdem das man auch mit dem Parametern --checkpoint oder verbose wenig informationen über den verlauf erhält.

Deswegen würde es sich vielleicht lohnen ein kleines Backup Programm in Python zu schreiben. Dann könnte man erstmal den kompletten Verzeichnisbaum einlesen und eine richtige Status-Ausgabe bei der kompression anzeigen lassen.

Aber bevor ich loslege, wollte ich erstmal Fragen ob jemand schon etwas in der Richtung programmiert hat???

Re: root server backup...

Verfasst: Montag 3. Juli 2006, 08:22
von gerold
jens hat geschrieben:Aber bevor ich loslege, wollte ich erstmal Fragen ob jemand schon etwas in der Richtung programmiert hat???
Hi Jens!

Rdiff-Backup:
http://www.python-forum.de/topic-4760.html
http://www.nongnu.org/rdiff-backup/

Dar:
http://dar.linux.free.fr/

lg
Gerold
:-)

Re: root server backup...

Verfasst: Montag 3. Juli 2006, 09:08
von jens
gerold hat geschrieben:Rdiff-Backup:
Wo liegt der Unterschied zwischen Rdiff und rsync?

Re: root server backup...

Verfasst: Montag 3. Juli 2006, 09:44
von gerold
jens hat geschrieben:
gerold hat geschrieben:Rdiff-Backup:
Wo liegt der Unterschied zwischen Rdiff und rsync?
Hi Jens!

Rsync erstellt dir eine 1:1 Kopie des Ordners, den du mit rsync kopierst. Ändert sich etwas im Quellordner, dann ändert sich das auch im Zielordner.

Rdiff-Backup erstellt zwar auch eine 1:1 Kopie, hält sich aber zusätzlich in einem eigenen Ordner auch die älteren Datenstände zurück. So ist es möglich, dass man ohne weiteres Datenstände von vor einer Woche oder von vor zwei Tagen rückgesichert werden können.

Rsync schützt dich nicht vor Datenverlust. Wenn jemand eine Datei im Quellordner löscht, dann ist diese auch im Zielordner nicht mehr zu finden. Rdiff-Backup schützt dich davor.

Rdiff-Backup kann so eingestellt werden, dass es Datenstände nur bis zu einer bestimmten Zeitspanne zurückhält. Ältere Datenstände werden nach einer gewissen Zeit gelöscht.

Für mich ist Rdiff-Backup ideal um wichtige Daten z.B. auf eine zweite Festplatte zu sichern. Um viele Daten von einem Computer im Internet zu einem anderen Computer im Internet zu sichern, nehme ich Duplicity. http://www.nongnu.org/duplicity/

Duplicity macht so ziemlich das gleiche wie Rdiff-Backup, mit dem entscheidenden Vorteil, dass es die Daten in kleine TAR-Archive verpackt, verschlüsselt und ressourcenschonend zu einem anderen Computer überträgt. Da die Daten in TAR-Archiven verpackt werden, können die Linux-Dateiattribute ohne weiteres auch auf einen Windows-Server übertragen werden. Der Nachteil von Duplicity ist der, dass die Daten in TAR-Archiven liegen und nur mit Duplicity raus geholt werden können. Bei Rdiff-Backup hat man immer den Stand der aktuellen Sicherung in einem Ordner, auf den man direkt zugreifen kann. Nur wenn man ältere Datenstände braucht, dann muss man diese mit Rdiff-Backup heraus holen.

lg
Gerold
:-)

Verfasst: Montag 3. Juli 2006, 11:44
von jens
Also ich hab nun zwei Varianten... Einmal ein lokales Backup mit rsync:

Code: Alles auswählen

#!/bin/sh

tag="`date +%A`"
ziel=/0_backup/$tag
echo
echo Backup $ziel wird erstellt...
echo
echo Du solltest root sein!
echo

# Alte Timestamp-Dateien löschen
rm $ziel/"000 Backup erstellt "*

# Neue Timestamp-Datei erstellen
d="000 Backup erstellt `date '+%x %X'`"
echo $d > $ziel/$d

mkdir -p $ziel
echo

# Dieses Shell-Skript auch sichern
cp $0 $ziel


echo /daten
rsync -rlpgot --delete /daten $ziel/
echo

echo /var/lib/mysql
rsync -rlpgot --delete /var/lib/mysql $ziel/
echo

echo /etc
rsync -rlpgot /etc $ziel/
echo

echo /var/log
rsync -rlpgot /var/log $ziel/ --exclude "*.gz"
echo

echo /home
rsync -rlpgot --delete /home $ziel/
echo
Dabei finde ich es schon blöd, das rsync kaum Informationen preis gibt. Deswegen ja auch die Idee mit einem Python Skript... Ich hätte gern einen ähnliche Status-Ausgabe wie bei meinem quota.py Skript.

Komisch, das Linux Kommandozeilenprogramme meist nur "überhaupt keine Ausgabe" oder "jeden Dateinamen anzeigen" kennen :(


Zum Remote sichern nehme ich dann rdiff-backup...

Verfasst: Donnerstag 19. Februar 2009, 15:43
von Damaskus
Hi,
ist eigentlich ein direkter Zugriff auf rdiff ohne die kompilierte Version (win32) möglich?
Also im Prinzip ein import rdiff und dann hat man den gesamten Befehlssatz oder geht das nur über die EXE?

Gruß
Damaskus

Verfasst: Donnerstag 19. Februar 2009, 16:13
von lunar
Es gibt auch noch rsnapshot, ein Perl-Skript auf Basis von rsync. Das schöne daran ist, dass es LVM-Snapshots beherrscht, und somit das System (sofern es LVM nutzt) im laufenden Betrieb komplett sichern kann.

Verfasst: Donnerstag 19. Februar 2009, 17:54
von Leonidas
Ich persönlich nutze ftplicity, das ist ein Wrapper um das in Python geschriebene duplicity welches Backups auf FTP-Server speichern kann, praktischerweise GPG-Verschlüsselt und auch etwas Management wie zeitabhängiges Löschen etc. bietet.

Verfasst: Donnerstag 19. Februar 2009, 18:28
von Damaskus
Leonidas hat geschrieben:Ich persönlich nutze ftplicity, das ist ein Wrapper um das in Python geschriebene duplicity welches Backups auf FTP-Server speichern kann, praktischerweise GPG-Verschlüsselt und auch etwas Management wie zeitabhängiges Löschen etc. bietet.
Das könnte in die Richtung gehen die ich brauch.
Ich suche was um von unseren Team Laptops diverse Verzeichnisse auf einem Netzlaufwerk zu sichern und zu verschlüsseln (einfache Verschlüsselung reicht).

Gruß
Damaskus

Verfasst: Freitag 20. Februar 2009, 09:28
von Damaskus
Damaskus hat geschrieben:Das könnte in die Richtung gehen die ich brauch.
Ist aber leider nicht so einfach auf Windows portierbar.

Gruß
Damaskus