Backup einer kompletten platte

Warum Debian und/oder eine seiner Spielarten? Was muss ich vorher wissen? Wo geht es nach der Installation weiter?
Antworten
Benutzeravatar
rene04
Beiträge: 1751
Registriert: 26.08.2004 08:46:39
Wohnort: Kaiserslautern

Backup einer kompletten platte

Beitrag von rene04 » 12.02.2008 10:17:22

hallo,

ich bin hin und hergerissen. ich suche eine möglichkeit ein backup einer kompletten festplatte zu machen. zuerst habe ich es mit dd versucht und das direkt per ssh auf nen anderen server geschoben. das ist allerdings vieeeel zu groß das image. also dachte ich mir ich versuchs mit partimage. hier muss ich aber eine lokale partition angeben auf die das image vorerst abgelegt wird! das ist schlecht da ich ja /dev/sda sichere und alle partitionen halt mal auf sda liegen. ich denk das ich hier in einer endlosschleife landen werde, oder? also wenn ich /dev/sda auf /dev/sda12 sichere.

also was mache ich nun? ich will komplett /dev/sda sichern. ich denke doch das da sda1, sda5, sda6...bis sda13 enthalten sind. ich habe aber keine partition ausserhalb sda (z.b: sdb) wohin ich sichern könnte. mit dd hab ichs ja wie gesagt direkt per ssh auf ne andwere mühle geschoben.

was kann ich tun um mit möglichst wenig aufwand ein komplettbackup zu bekommen?

gruesse

Benutzeravatar
HELLinG3R
Beiträge: 1328
Registriert: 15.04.2004 07:54:33

Beitrag von HELLinG3R » 12.02.2008 10:39:41

Hast du schon versucht, das dd-image zu komprimieren? das könnte etwas bringen, habs aber noch nicht getestet.
DD mit rüberkopieren mittels komplettem device /dev/sdX sichert auch die Partitionstabelle. Dazu benötigst du eine baugleiche Platte auf der Zielseite, ansonsten hast du entweder Datenverlust oder verschenkst platz!

Was spricht gegen TAR? oder Rsync?
Perl macht Spass.

Benutzeravatar
rene04
Beiträge: 1751
Registriert: 26.08.2004 08:46:39
Wohnort: Kaiserslautern

Beitrag von rene04 » 12.02.2008 10:44:18

mit gzip -9 hab ich s schon versucht. sind aber immernoch an die 30gb. das ist unakzeptabel.

was meinst du mit baugleicher platte auf zielseite?

ich schieb das schon komprimiert rüber auf die zielseite in ein verzeichniss.

dd if=/dev/sda | gzip -9 | ssh -c blowfish user@serverip "cat > imagename.img.gz"

kann ich das mit partimage net genauso machen:

partimage -z1 -d save /dev/sda | ssh -c blowfish user@serverip "cat > /srv/webserver.partimg.gz"

gruesse

goecke
Beiträge: 289
Registriert: 12.01.2007 11:57:27

Beitrag von goecke » 12.02.2008 11:09:53

Hi,

soweit ich weiß kann partimage _nur_ einzelne Partitionen.

Du Dir aber auch ein Script basteln wie (Ungetestet!)

Code: Alles auswählen

for partition in `fdisk -l  2> /dev/null | grep "^\/dev" | cut -d ' ' -f 1` ; do 
partimage -z1 -d save $partition | .....
done;
dann den / die Partitionstabellen mit dd noch kopieren und gut.

was du auch machen kannst ist vor dem Backup mittels dd
den "leeren" bereich der Partitionen mit nullen zu füllen "cat /dev/zero > /nullfile"
das ermöglicht dem gzip die unbenutzten bereiche sehr effizient zu packen - wobei
Partimage gleich die Bereiche auslässt und sie noch nicht einmal lesen muss.

HTH
Johannes

PS:
die dd und partimage backups nicht vom aktuell laufenden System machen! immer von LIVE-CD (oder Rettungs-System)

Benutzeravatar
rene04
Beiträge: 1751
Registriert: 26.08.2004 08:46:39
Wohnort: Kaiserslautern

Beitrag von rene04 » 12.02.2008 11:26:23

hmmm, alles sehr unkomfortabel :( und mein hauptproblem ist, dass ich auf keinen fall die server runterfahren kann. die müssen laufen!

gruesse

goecke
Beiträge: 289
Registriert: 12.01.2007 11:57:27

Beitrag von goecke » 12.02.2008 11:32:21

rene04 hat geschrieben:hmmm, alles sehr unkomfortabel :( und mein hauptproblem ist, dass ich auf keinen fall die server runterfahren kann. die müssen laufen!

gruesse
also im Normalfall müssen die Server für ein Backup angehalten werden.
Zumindest mußt du sicherstellen, daß keine Dateien zum schreiben geöffnet sind!

Um die Downtime kurz zu halten solltest du dir mal lvm snapshots anschauen und mit rsync/rsnapshot (oder ähnlichem)
die Backups machen.


HTH
Johannes

Benutzeravatar
rene04
Beiträge: 1751
Registriert: 26.08.2004 08:46:39
Wohnort: Kaiserslautern

Beitrag von rene04 » 12.02.2008 11:34:51

also wenn ich das richtig verstehe ist es grundsätzlich nicht möglich ein backup eines laufenden servers zu machen! das is ja ganz ganz doof. ich kann die server nicht ausschalten, auf keinen fall!

gruesse

goecke
Beiträge: 289
Registriert: 12.01.2007 11:57:27

Beitrag von goecke » 12.02.2008 11:53:41

rene04 hat geschrieben:also wenn ich das richtig verstehe ist es grundsätzlich nicht möglich ein backup eines laufenden servers zu machen! das is ja ganz ganz doof. ich kann die server nicht ausschalten, auf keinen fall!

gruesse
Äh im Prinzip ist es unmöglich!

Stell dir mal vor du hast eine Datenbank. Eine Datei enthält die Daten, eine andere den Index.
Zufällig ist der Index schon geschrieben, die Daten aber noch nicht. Dann machst du ein Backup von den Daten,
dannach vom Index. Ergebnis: Du hast ein Backup von einer kaputten Datenbank (in einem inkonsistenten Zustand).

Es gibt natürliche viele Wege diese Beschränkung zu umgehen, z.B. eine Datenbank-Dump. der sollte immer einen Konsistenten zustand ergeben. diesen kannst du dann backuppen. Oder wie schon erwähnt ein LVM-Snapshot.
APP anhalten, Snapshot machen, APP starten und den Snapshot backuppen (der Snapshot bleibt im Vorherigen Stand und ist konsistent).

Es hängt aber im Detail von deinen Applikationen ab. Je aufwändiger/struwweliger die Applikationen sind desdo komplitzerter ist ein Backup.

gruiß
Johannes

Benutzeravatar
rene04
Beiträge: 1751
Registriert: 26.08.2004 08:46:39
Wohnort: Kaiserslautern

Beitrag von rene04 » 12.02.2008 12:06:58

hmmmm, dann scheint mir nur tar in verbindung mir ssh zu bleiben!!! den die maschine wird auf keinen fall ausgeschaltet. rsync packt ja nicht soweit ich weis, weiss aber nicht viel :)

kann man das so machen:

tar -zcf /mnt/Backup/webserver.tar.gz /bin /boot /dev /etc .......

welche verzeichniss brauche ich nicht zu sichern? sys? dev?

gruesse

goecke
Beiträge: 289
Registriert: 12.01.2007 11:57:27

Beitrag von goecke » 12.02.2008 12:33:56

rene04 hat geschrieben:hmmmm, dann scheint mir nur tar in verbindung mir ssh zu bleiben!!! den die maschine wird auf keinen fall ausgeschaltet. rsync packt ja nicht soweit ich weis, weiss aber nicht viel :)

kann man das so machen:

tar -zcf /mnt/Backup/webserver.tar.gz /bin /boot /dev /etc .......

welche verzeichniss brauche ich nicht zu sichern? sys? dev?

gruesse
Überleg dir Folgende Dinge:

1. Wenn der Server Crashed wie ist dein Vorgehen den Rechner wieder lauffähig zu kriegen?
Installation von normalen Binaries? wozu sicherst du sie dann im Backup? (unnütze Zeit und Speicher und
Traffik)

2. Welche Daten/Konfigurationen/Mails/Webseiten/?? liegen wo auf dem Rechner
mache Dir die Arbeit und suche danach welche deiner Applikationen wo die Daten ablegt!
Wenn der Server wirklich wichtig ist, hast du auch die Zeit dazu!
(mache kein Backup von /dev/random und /dev/zero)
also /etc /home /var/www /var/mysql (oder mysql dump) ,... kein /dev /proc /sys /tmp ...


3. rsync bzw. rsnapshot erzeugen zwar eine unkomprimierte kopie auf deinem Zielsysten, aber
- es werden nur minimale Daten übertragen => sehr effizient und relativ schnell, weil
unveränderte Daten nicht übertragen werden.

4. auf dem Zielsystem kannst du dann noch mit tar, etc backups auf bänder/scheiben machen

nur so zum Anfang => google mal nach rsnapshot, rsync backup

gruß
Johannes

Benutzeravatar
rene04
Beiträge: 1751
Registriert: 26.08.2004 08:46:39
Wohnort: Kaiserslautern

Beitrag von rene04 » 12.02.2008 12:47:18

ich kenne rsync bereits.

zu 1. naja ich boote meine rescue partition und kopiere von da aus alle mit tar gesicherten verzeichnisse zurück in meine.

ich sichere nun also alle verzeichnisse bis auf: /dev /proc /sys /tmp

gruesse

Benutzeravatar
MarkusF
Beiträge: 361
Registriert: 04.06.2007 12:45:22

Beitrag von MarkusF » 12.02.2008 20:34:33

rene04 hat geschrieben: ich sichere nun also alle verzeichnisse bis auf: /dev /proc /sys /tmp
Ich sichere nur selektiv /etc /var /root /home. Die MySQL-DB's kriegen noch nen extra Dump auf die /backup. Außerdem leg ich mir vorher mittels dpgk ne Paketliste als Textdatei auf /root. So kann ich im Notfall nach der Minimalinstallation sehr schnell die Pakete mittels aptitude install <paketfle wieder holen. Evtl. vorhandene selbstkompilierte Programme bräuchten noch ne Spezialbehandlung.

PS: interessantes Thema: ich plane das Szenario der Wiederherstellung die Tage mal lokal zu proben. Mal gespannt was ich alles übersehen habe.

Grüße
Markus

Antworten