# Bytegenaues Backup von gentoo

## slick

Ich möchte mein liebesvoll compiliertes Gentoo sichern und die Platte (als Image) auf einem anderen Rechner backupen (und/oder auf CD brennen).

1. Wir booten hierzu von CD (ich verwende dazu Knoppix) und mounten via NFS oder SAMBA das Zielverzeichnis für unsere Backup, nach /ziel. Eine zweite Platte im System können wir natürlich auch benutzen.

2.  (optional, sonst weiter mit 4.) Da unsere Gentoo-Platte nicht voll belegt ist wäre es Unfug diese komplett mit dd zu sichern, da wir dann den Datenmüll, welcher ja noch auf der Partition liegt, mitsichern würden. D.h. wir überschreiben vorher den leeren Bereich mit Nullen und dann packen wir das ganze per dd und gzip. Dazu müssen wir die Quellpartition mounten.

```
mkdir /quelle

mount /dev/hda2 /quelle

dd if=/dev/zero of=/quelle/override bs=1M
```

Das dauert jetzt eine Weile, weil dd in die Datei override jetzt Nullen schreibt bis die Partition restlos voll ist. 

(Für Windows-Partitionen siehe weiter unten im Thread: https://forums.gentoo.org/viewtopic-p-1429366.html#1429366)

Über

```
watch df
```

auf einer anderen Console können wir zusehen wie sich die Partition füllt.

Wenn dd abbricht können wir die Datei wieder löschen, da sie nur das Ziel hatte den leeren Bereich mit Nullen zu überschreiben

```
rm /quelle/override

umount /quelle

rmdir /quelle
```

3. Wir wiederholen 2. für alle "großen" Partitionen unserer Platte, welche viel freien Speicherplatz besitzen

4. Jetzt sichern wir die Festplatte, vorher prüfen durch die Eingabe von

```
mount
```

nochmal ob keine der Partitionen dieser Platte gemountet ist.

Hinweis: Manche Boot-CDs mounten automatisch die gefundenen swap-Partitionen. Durch die Eingabe von

```
swapon -s
```

können wir prüfen welche Partitionen als Swap gemountet sind. Swaps auf der zu sichernden Platte sollten durch

```
swapoff /dev/hdaX
```

deaktiviert werden.

Und jetzt gehts los:

```
dd if=/dev/hda | gzip -9 | split -b 2000m - /ziel/backup.gz
```

Das macht folgendes: dd liest die Festplatte aus und der Inhalt wird via gzip komprimiert und in Dateien mit max. Größe von 2GB abgelegt. die 2GB sind bewußt gewählt, weil beim Sichern  über eine Samba-Verbindung kommt es zu Problemen mit Dateien > 2GB. Wer seine Platte auf CD sichern möchte nimmt statt der 2000m eine 650m. 

Die Überschreibung mit den Nullen (2.) haben wir gemacht weil dann gzip die leeren Bereiche sehr hoch komprimiert.

Nachdem dd seine Arbeit beendet, haben wir auf unserem Ziellaufwerk mindestens die Datei backup.gzaa. War mehr als ein File für das Backup nötig finden wir backup.gzaa, backup.gzab, backup.gzac ...

So, das Backup ist geschafft. Nurnoch sauber rebooten.

5. Das Zurückschreiben ist relativ simpel. Wir werfen unsere Boot-CD rein und mounten unser Verzeichnis mit dem Backup (via Netzwerk). Ein

```
cat /quelle/backup.gz* |  gzip -dc | dd of=/dev/hda
```

schreibt unser Backup wieder zurück. Bei Backup auf CD sollte man vorher alle Teile in ein Verzeichnis kopieren!

Meine Sicherung einer 60GB Partition (ohne 2.) dauert übers LAN via Samba etwa 1,5 h. Zurückschreiben liegt auch bei etwa 1,5 Stunden.

TipImTip: Damit kann man übrigens (ohne 2.) das Win vom Firmenlaptop sichern, übers Wochenende mal fix Gentoo draufspielen und am So. Abend wieder Win zurückspielen  :Wink:  oder einfach nur "schnell" zwischen verschiedenen Installationen / BS wechseln.

Feedback welcome !

Ergänzung

Man kann natürlich auch nur einzelne Partitionen sichern. Hierzu unter 4. 

```
dd if=/dev/hda ...
```

ersetzen durch

```
dd if=/dev/hdaX ...
```

und beim Entpacken, unter 5.

```
... | dd of=/dev/hda
```

ersetzen durch

```
... | dd of=/dev/hdaX
```

wobei X für die Nummer der Partition steht.

Das folgende funktioniert NUR wenn das Backup von nur einer Partition ist!

 *mikkk wrote:*   

> Mit dd legt man sich auf eine bestimmte Partitionsgrösse fest. Wenn man sich eine neue Platte zulegt (z.B. weil die alte den Geist aufgegeben hat) wird fast immer Platz verschwendet.

 

Wenn man genügend Platz hat kann man das Backup ja auspacken, per loop mounten und dann normal rüberkopieren. So kann man beide Varianten "vereinen" und die Vorteile von beiden nutzen. Man kann auf neue Platten schwenken hat aber trotzdem die alte Partition bytegenau  :Wink: 

ungetestet, aber sollte so gehen:

```
cat /quelle/backup.gz* | gzip -dc | dd of=/loopfile

mount -o loop /loopfile /mnt/alt

cp -av /mnt/alt/* /mnt/neu
```

Man bedenke aber man braucht zum auspacken den Speicherplatz wie vorher die gesicherte Partition hatte und nicht die Gesamtgröße der Backupfiles.

Links zum Thema

Erstellen eines Stage4Last edited by slick on Thu Jan 29, 2015 12:31 pm; edited 17 times in total

----------

## UncleOwen

 *slick wrote:*   

> Bei Backup auf CD sollte man vorher alle Teile in ein Verzeichnis kopieren!

 

Was natürlich ein Problem ist, wenn man nur eine Platte hat. Kann man das irgendwie umgehen?

Ansonsten: Schöne Anleitung!

----------

## Sas

Hey danke für den Hinweis mit den 2GB und Samba. Jetzt weiß ich auch, warum das einzige Backup, das ich je gebraucht hätte, kaputt war  :Surprised: 

Aber wenn man auch zu faul zum Testen ist...

Ansonsten gute Anleitung, auch wenn ich mir mittlerweile eigentlich nur /etc/ /var/db /var/cache/edb und /home sichere, damit geht das Backup schnell und ich habe dennoch alles, um mir (nach ner stage3-Installation) das System so gut wie automatisch wieder herzustellen.

----------

## HeadbangingMan

Super, vielen Dank für den Tipp   :Very Happy: 

----------

## mikkk

Ich würde beim Backup ein "cp -a" einem "dd" vorziehen. Mit dd legt man sich auf eine bestimmte Partitionsgrösse fest. Wenn man sich eine neue Platte zulegt (z.B. weil die alte den Geist aufgegeben hat) wird fast immer Platz verschwendet. Des Weiteren wird eine so gesichertes Image nicht mehr booten, wenn man das Restore auf einer anderen Platte macht.

Ausserdem spart man sich beim Sichern mit "cp" das Plattnullen vom freien Platz (wird ja von cp nicht angerührt). 

Das Backup ist dann zwar nicht mehr "bytegenau" (Bootmanager muss man dann schon noch von Hand einrichten) aber das Ergebnis funktioniert auch (hab's ausprobiert  :Wink: ).

mikkk

----------

## Athlon

Verständnisfrage:

 *slick wrote:*   

> 
> 
> ```
> cat /quelle/backup.gz* |  gzip -dc | dd of=/dev/hda
> ```
> ...

 

Tät's nicht auch ein

```
 gzip -c -d /quelle/backup.gz* | dd of=/dev/hda
```

?

Oder: Was bewirkt der "cat" Befehl?

Thx!

----------

## slick

 *UncleOwen wrote:*   

> Was natürlich ein Problem ist, wenn man nur eine Platte hat. Kann man das irgendwie umgehen?

 

2. Rechner. Windows tuts zur Not ja auch über Samba  :Wink: 

 *mikkk wrote:*   

> Ich würde beim Backup ein "cp -a" einem "dd" vorziehen.

 

Bei Linux führen viele Wege nach Rom. Ich nehme auch oft nur cp, aber es macht sich gut über dd weil man dann sehr einfach verschiedenste Partitionsvarianten und Betriebsystem "wechseln" kann. Meine Variante setz ich auch ein um den anfälligen Win-Rechner zu "reseten"...

 *Athlon wrote:*   

> Oder: Was bewirkt der "cat" Befehl? 

 

Gute Frage, müßte man mal testen. Ich habs mir wie beschrieben zusammengesammelt. Ich finde die Zusammenstellung mit den pipes allerdings meist übersichtlicher  :Wink: 

----------

## slick

- Eröffnungsartikel ergänzt -

----------

## primat

NFS kann in der Standard version 2 auch nur mit files bis 2gb umgehen. NFS verison 3 kann dann auch gößere files behandeln!

Gruss

----------

## toskala

man kann imho irgendwo im makefile von samba einstellen, dass es bittesehr large filesizes erlauben soll. weiss aber nimmer wo, dann geht auch mehr als 2gb.

----------

## barbar

Vielleicht ist das Manchem zu langweilig, aber für das beschriebene Problem verwende ich partimage.

Ist auf jeder Knoppix, SystemRescue CD drauf.

Beide Rechner booten von der CD. Auf dem Zielrechner wird partimaged gestartet. Auf dem Quellrechner läuft partimage und kopiert die Daten auf den Zielrechner.

Partimage hat auch soetwas wie ein gui um die Sache zu erleichtern.

www.partimage.org

----------

## andix

Wie mache ich Schritt 2 am besten auf eine NTFS-Partition? Reicht defragmentieren? Wie mache ich am schlauesten ein dd if=/dev/zero of=/quelle/override bs=1M? Gibt es außer Cygwin noch eine Alternative?

----------

## slick

Defragmentieren nützt nix. In etwa so:

nullfile.vbs

```
Set oFileObject = CreateObject("Scripting.FileSystemObject")

Set oFile = oFileObject.CreateTextFile("c:\nullfile.txt")

Do

   oFile.Write(Space(1024*1024))

Loop
```

Erklären will ichs aber nicht genauer, falsches Forum  :Wink: 

----------

## jhgz1

interessante anleitung!

obwohl ich mich redlich frage, welche backuploesung jetzt die beste ist, dazu gibts ja hier im forum dutzende anleitungen...

ich selber bin mit rsync sehr gluecklich, da ich eine externe festplatte verwende, die wunderbar mit udev eingebunden ist und ich das ganze simpel als cron job steuern kann. sicherlich dauert es einige zeit, bis die dateiliste erstellt ist, aber der eigentliche transfer nur der modifizierten daten scheint mir doch um einiges schneller als jedes mal alles komplett zu sichern.

----------

## andix

Das mit der VBS ist eine gute Idee. thx. Ich werde aber trotzdem vorher defragmentieren, dann spare ich mir vielleicht noch das eine oder andre byte  :Wink: .

Das Backup mit rsync ist ganz etwas anderes. Damit sicherst du die Dateien. In meinem Fall will ich eine ganze Festplatte (inklusive Partitionstabelle & Bootsektoren) 1 zu 1 sichern. Ich kann das System dann genauso wiederherstellen, wie es vorher war.

Mein gentoo sichere ich über USB-Festplatte. Einfach ALLES mit cp kopieren. Wegen USB 2.0 dauert das auch nicht sonderlich lange.

----------

## slick

 *Quote:*   

> In meinem Fall will ich eine ganze Festplatte (inklusive Partitionstabelle & Bootsektoren) 1 zu 1 sichern.

 

Bitte dann nochmal Feedback ob es so geklappt hat oder ob Probleme sind. Soll jetzt nicht heissen daß ich das nicht getestet hätte...

----------

## andix

werde ich machen. Ist auch nur der computer von einem freund von mir. Nicht mein eigener...  :Laughing: 

Es schaut alles sehr gut aus. Ich nehme schon an, dass es funktioniert.

----------

## Freejack

Ich hab das bisher immer mit partimage unter knoppix gemacht. Finde ich bequemer  :Smile: 

-Freejack

----------

## andix

Ich weiß nicht genau, wie partimage sichert. Aber als ich es mir das letzte mal angeschaut habe, hatte es nur experimentelle unterstützung für NTFS. 

Die hier vorgestellte Lösung geht mit jedem Dateisystem, da wir es 1:1 kopieren, und nicht irgendwie verändern.

Wenn ich ein Backup mache, dann soll es auch funktionieren. Deshalb scheidet  etwas experimentelles aus.

----------

## Gekko

Falls die Files grosser als 2 GB werden bietet sich das an:

```
dd if=/dev/hdersetzmichdoch | gzip -9 | split -b 650m - /burn.gz
```

Macht schöne Häppchen für CD's.

----------

## slick

 *Quote:*   

> Falls die Files grosser als 2 GB werden bietet sich das an:
> 
> Code:
> 
> dd if=/dev/hdersetzmichdoch | gzip -9 | split -b 650m - /burn.gz
> ...

 

Wer lesen kann ist klar im Vorteil, steht doch oben drin  :Wink: 

----------

## Gekko

Oooops.

Ich hatte gestern wohl ein Gläschen Grauburgunder zuviel   :Rolling Eyes:   :Laughing: 

Sorry

----------

## SinoTech

Funktioniert das ganze eigentlich auch wenn ich die ursprüngliche Partition von der ich das Backup mach vergrößere ? Also habe meine Windows Partition verkleinert und wollte das nun unter Linux dran hängen. Kann aber vom freigegebenen Speicher keine neue Partition erstellen da ich dafür eine "extended Partition" bräuchte, aber die 4 Primären Partitionen schon belegt sind.

Also ist es möglich von der Linux Partition ein Backup zu machen, dann diese zu löschen (Inklusive der SWAP und BOOT) und dann einfach diese drei Partitionen mit aktualisierter Größe neu zuerstellen und das BACKUP wieder zurück zuspielen ?

----------

## SinoTech

Hmm ... habs einfach mal ausprobiert .. und funktioniert leider nicht so wirklich (Naja .. war ja fast zu erwarten). Bekomme nach einem Neustart (Mit liveCD da ich grub noch nicht eingestellt hatte) beim mounten meiner root partition eine Meldung das sie überprüft werden müsse. Beim prüfen bekomme ich dann lauter Warnungen wegen ungültigen I-nodes etc. Habe dann überall korirgieren gemacht. Zum Schluß kann ich dann auch ohne Probleme auf die Partition zugreien, nur die angezeigt Größe 

# df -h

ist nach dem Check wieder die alte (Also die Größe die ich hatte bevor ich die Partition vergrößert habe). Auch beim booten über Grub gibts dann Probleme weil er wärend dem booten von "/dev/hda4" etwas lesen will. Nur "hda4" ist jetzt nicht mehr meine root Partition sonder die extended Partition. Er sollte also eigentlich von "hda5" lesen (Nicht falsch verstehen, Grub startet von der richtigen Partition. Nur wenn Gentoo schon mitten im booten ist kommt diese Fehlermeldung und nichts geht mehr).

Evtl. eine Idee ob ich einfach was nach dem zurückspielen des BACKUPS abändern kann das er die neue Partitionsgröße ohne murren übernimmt ?

Zur Not werd ich halt das System neu aufsetzen müssen (Hatt ich sowieso Anfangs befürchtet), aber evtl. gibts ja doch noch eine einfachere Möglichkeit.

Mfg

Sino

----------

## SinoTech

Hmm .. mein Fehler. Hatte vergessen die "/etc/fstab" anzupassen. Deshalb versuchte er von "hda4" anstatt "hda5" zu lesen.

Trotzdem wunderts mich das ich die alte Partitiongröße angezeigt bekomme. Dachte Linux speichert Dateien immer relativ zum Partitionsanfang ("/" hat ja zum Beispiel immer den I-Node 2). In dem Fall sollte es doch keinen Unterschied machen wenn ich die Partition verschiebe !? Oder wird noch irgendwo im Dateisystem gespeichert wie groß die aktuelle Partition ist so das ich die Daten im Backup übernommen habe ?

Mfg

Sino

----------

## platinumviper

 *primat wrote:*   

> NFS kann in der Standard version 2 auch nur mit files bis 2gb umgehen.

 

 :Question:  Was für einen Kernel verwendest Du? Im aktuellen stabilen Kernel (2.6.10) werden nur NFSv3 und NFSv4 angeboten.

platinumviper

----------

## Beforegod

 *Athlon wrote:*   

> Verständnisfrage:
> 
>  *slick wrote:*   
> 
> ```
> ...

 

Ganz einfach, da durch die Splittung keine Header in die Nachfolgenden Dateien übernommen werden..

Das Cat bewirkt einfach das alle backup* dateien als eine große Gzip Datei ausgegeben werden..

----------

## c07

 *SinoTech wrote:*   

> Oder wird noch irgendwo im Dateisystem gespeichert wie groß die aktuelle Partition ist so das ich die Daten im Backup übernommen habe ?

 

Die meisten (bzw. alle (?) üblichen) Dateisysteme sind völlig unabhängig von Daten über die Partition, in der sie liegen. Teilweise kann man bei mkfs.* angeben, wie viel der Partition überhaupt benutzt werden soll; ext2/3 lässt z.B. oft den letzten möglichen Block aus, wenn man nicht explizit die volle Partitionsgröße als Parameter übergibt.

Also kann man in der Regel mit der beschriebenen Methode durchaus in eine größere Partition kopieren, nutzt damit aber den zusätzlichen Platz nicht aus. Für viele Dateisysteme gibts allerdings Tools, die es nachträglich vergrößern können, wenn noch Platz in der Partition frei ist (wenn um ein Mehrfaches vergrößert wird, kann dabei aber die Dateisystemstruktur suboptimal werden (zu viele Blockgruppen)).

Wegen dem fsck: Du hast nicht zufällig das umount vergessen? Wenn die Partition während dem dd gemountet ist, bekommst du in der Regel ein inkonsistentes Abbild vom Dateisystem.

----------

## SinoTech

 *c07 wrote:*   

> 
> 
> Wegen dem fsck: Du hast nicht zufällig das umount vergessen? Wenn die Partition während dem dd gemountet ist, bekommst du in der Regel ein inkonsistentes Abbild vom Dateisystem.

 

Gute Frage  :Wink: . Hab sie jedenfalls kurz gemountet um den restlichen freien Platz mit Nullen zu überschreiben .. weiß aber ehrlich gesagt nicht mehr ob ich daran gedacht habe sie wieder zu umounten. Naja, war halt mein erstes Backup das ich gemacht habe und aus Fehlern lernt man ja bekanntlich. Habe jetzt das System erstemal komplett neu aufgespielt. Denke mal damit habe ich die wenigsten Probleme.

Danke für die gute Erklärung.

Mfg

Sino

----------

## slick

 *Beforegod wrote:*   

> Ganz einfach, da durch die Splittung keine Header in die Nachfolgenden Dateien übernommen werden.. 
> 
>  Das Cat bewirkt einfach das alle backup* dateien als eine große Gzip Datei ausgegeben werden..

 

Hey cool, wußte ich garnicht, aber wenn man darüber nachdenkt irgendwie logisch! Danke...

----------

## jannis

Sollte man nicht wegen der Größe lieber bzip2 nehmen? OK, es dauert länger aber ich würd's glaub' ich damit machen.

Sonst nettes HOWTO, ich hab' aber jez' schon ein "tar cjvplf bla.tar.bz2 /" Backup ^^

----------

## gabelhonz

 *Quote:*   

> Was natürlich ein Problem ist, wenn man nur eine Platte hat. Kann man das irgendwie umgehen? 

 

Hab ich mich auch grad gefragt.

Im Netzwerk kann man das dann ja direkt auf nen anderen Server schreiben.

Mache es so: 

```
dd if=/dev/hdx of=/pfad/image.gz | gzip -9 | rsync -e ssh -va Ziel:/pfad
```

Somit schreibst du dann das image per rsync direkt auf den anderen Rechner im Netz. Natürlich könnte man auch das ganze per nfs oder shfs machen, aber so ist einfacher.

gruß

----------

## slick

Spitzen Idee mit dem rsync.. die Variante kannte ich auch noch nicht!    :Smile: 

----------

## mrsteven

rsync ist überhaupt ein schönes Tool für Backups. Ich habe heute mein Notebook mit diesem kleinen Script über das Netzwerk auf den Desktoprechner gesichert:

rbackup

```
#!/bin/bash

# script to create/update a remote backup via rsync

###################################################

# configuration

###############

BACKUP_SERVER="desktop"

BACKUP_LOGIN="root"

BACKUP_PATH="/root/notebook-backup"

LOCAL_PATH="/"

EXCLUDES="/root/.rbackup-excludes"

EXTRA_OPTS=""

# tell user what is going to happen and prompt if he really wants that

##########################################################################

if ! [ -r "$EXCLUDES" ] ; then

    echo "Cannot read exclude file $EXCLUDES. Aborted."

    exit 2

fi

echo "This script will create or update a backup of this system."

echo "It will login as $BACKUP_LOGIN on $BACKUP_SERVER."

echo "Then it will backup to $BACKUP_PATH on the remote machine."

echo "This script will ignore files according to the following pattern:"

echo

cat "$EXCLUDES"

echo

echo -n "Do you want to continue? [Yes or No] "

read RESPONSE

if ! [ "$RESPONSE" = "Yes" ] ; then

    echo "No backup created or updated!"

    exit 1

fi

# now, let's go!

################

rsync -avz --numeric-ids -e "ssh" --delete --delete-excluded --exclude-from="$EXCLUDES" --progress $EXTRA_OPTS \

    "$LOCAL_PATH" "$BACKUP_LOGIN@$BACKUP_SERVER:$BACKUP_PATH"

if ! [ $? = 24 -o $? = 0 ] ; then

    echo "Error while running rsync!"

    exit 3

fi

echo

echo "Backup completed!"

echo
```

/root/.rbackup-excludes (ggf. anpassen)

```
/dev/*

/proc/*

/sys/*

/tmp/*

/var/tmp/*

/var/run/*

/usr/tmp/*

/usr/portage/distfiles/*

/mnt/cdrom

/mnt/fat

/mnt/usb
```

Ist sicher weit weg davon, perfekt zu sein (kenne mich mit Shell-Scripten nicht so sehr aus), aber für mich langt es. Wer aber Verbesserungsvorschläge hat, nur her damit!  :Very Happy: 

Wenn man das Ziel für rsync ein wenig ändert, kann man auch z.B. wunderbar auf eine USB-Platte sichern.

Wenn man darauf achtet, dass während dem Backup nicht grade ein emerge läuft oder irgendjemand sein Passwort ändert, sind sogar Backups aus dem laufenden System möglich, man sollte aber eben vorsichtig sein, besonders bei Datenbanken.

----------

## primat

 *platinumviper wrote:*   

>  *primat wrote:*   NFS kann in der Standard version 2 auch nur mit files bis 2gb umgehen. 
> 
>  Was für einen Kernel verwendest Du? Im aktuellen stabilen Kernel (2.6.10) werden nur NFSv3 und NFSv4 angeboten.
> 
> platinumviper

 

Da dieser Thread gerade wieder aufgewärmt wird, merke ich an, dass es im Juli, zu Zeiten meines Posts den kernel 2.6.10 noch nicht gab. Mag inzwischen also irrelevant sein.

Gruss

primat

----------

## DarKRaveR

Mal was ganz anderes an diesem Punkt, was spricht denn dagegen sowas wie dump zu nehmen ?

Aber die Frage mal nur am Rande ...

----------

## primat

 *Quote:*   

> Dump/restore ext2fs backup utilities

 

Die meisten dürften wohl ander filesystems haben. Es gibt auch noch xfsdump, aber für die anderen ist mir sowas nicht bekannt!

Gruss

----------

## Massimo B.

Ist denn die dd-Kopie praktikabel bei einem laufenden System? Das Lesen sollte bei gemountetem / doch kein Problem sein?

Zur Zeit schreibe ich einfach ein tar-file über nfs von allen root-Zweigen ohne dev, proc, tmp, sys.

Damit hab ich auch das "Nullen" der leeren Bereiche gespart.

Wäre denn das "Nullen" im laufenden Betrieb möglich?

Pao.

----------

## slick

Also zu dem dd im laufenden Betrieb kann ich nicht viel sagen. Ein überschreiben des leeren Bereiches habe ich schon im laufenden Betrieb gemacht, allerdings nicht auf der Systempartition. Also ich denke es "könnte" mit Backup via dd und dem überschreiben auf einem laufenden System funktionieren. Aber sicher bin ich mir absolut nicht. Ich denke es hängt auch damit zusammen wie stark Dein System auf die Platte schreibt. Alle Services etc. sollten angehalten sein. Ein vollständiges und aktuelles Backup solltest Du auf jeden Fall haben wenn Du das probieren möchtest.

Nachtrag: Hinweis: Das mit dem beschreibenen dd-Backup ist nicht als Backup für laufende Systeme gedacht gewesen. Dafür gibts die diversen tar- und cp-Lösungen.

----------

## mrsteven

Hmm, wenn du dir per dd ein Image von einer momentan verwendeten - sprich gemounteten - Partition erstellst, wird das Image höchstwahrscheinlich ein kaputtes Dateisystem enthalten. dd ist also aus dem laufenden Betrieb nicht zu empfehlen.

----------

## DarKRaveR

Also ein dd image von nem gemountetem filesys wäre nicht so dolle, es sei denn, du frierst es voher ein, sofern das FS es unterstützt ....

Was ich mich Frage: So schwer kann das doch eigentlich nicht sein, wenn Acronis es hinbekommen hat, warum bekommen die entwickler es dann nicht hin ???

----------

## Massimo B.

Da ich am laufenden System regelmäßig Backups/Screenshots machen möchte, bietet sich somit ein kopieren ohne dd eher an.

Sei es nun cp -a oder tar. Frage ist hinterher nur, wie sauber es ist, einfach das tar drüberzukopieren, oder eher vorher die Bäume zu löschen.

Außerdem mache ich das tar mit --exclude-from=, was z.B. /var/tmp oder /var/spool ausschließt.

Welchen Vorteil soll also eine bitgenaue Kopie haben? Bei cp sollte doch sogar das Filesystem neu organisiert werden, was Fragmentierung angeht?

Von partimage gibts außerdem eine ppc-Bootcd.

Außerdem bekam ich den Tip, ein iBookmit cd F-Taste im target disk mode zu starten, und als firewiredisk zu verwenden.

(Nur um das Thema Backup zu verfollständigen.)

----------

## SinoTech

 *slick wrote:*   

> Also zu dem dd im laufenden Betrieb kann ich nicht viel sagen. Ein überschreiben des leeren Bereiches habe ich schon im laufenden Betrieb gemacht, allerdings nicht auf der Systempartition. Also ich denke es "könnte" mit Backup via dd und dem überschreiben auf einem laufenden System funktionieren. Aber sicher bin ich mir absolut nicht. Ich denke es hängt auch damit zusammen wie stark Dein System auf die Platte schreibt. Alle Services etc. sollten angehalten sein. Ein vollständiges und aktuelles Backup solltest Du auf jeden Fall haben wenn Du das probieren möchtest.
> 
> 

 

Die beschriebene Methode legt ja nur eine Datei an die lauter Nullen enthält. Wenn Platte voll ist bricht es ab ... andere programme die auf die Platte schreiben wollen können das n dem Augenblick natürlich auch nicht .. die Platte ist ja voll. Die Datei wird zwar im Endeffekt wieder gelöscht, trotzdem gibt es einen kurzen Moment in dem die Platte komplett gefüllt ist und es damit zu Problemen mit anderen programmen kommen kann. Insofern ist die beschriebene Methode nicht für den laufenden betrieb gedacht.

 *mrsteven wrote:*   

> 
> 
> Hmm, wenn du dir per dd ein Image von einer momentan verwendeten - sprich gemounteten - Partition erstellst, wird das Image höchstwahrscheinlich ein kaputtes Dateisystem enthalten. [...]
> 
> 

 

Jep, spreche da aus eigener Erfahrung.

 *organ wrote:*   

> 
> 
> Welchen Vorteil soll also eine bitgenaue Kopie haben?
> 
> 

 

Du kannst BACKUPs von Dateisystemen erstellen und zurückspielen die der Kernel nicht unterstützt bzw. von denen er nur lesen kann (siehe NTFS).

Mfg

Sino

----------

## slick

 *SinoTech wrote:*   

> 
> 
>  *organ wrote:*   
> 
> Welchen Vorteil soll also eine bitgenaue Kopie haben?
> ...

 

Und Du kannst Backups von kompletten (Nicht-Linux) Betriebssystemen machen, solange der Rechner nur von CD booten kann. 

 *slick wrote:*   

> Damit kann man übrigens (ohne 2.) das Win vom Firmenlaptop sichern, übers Wochenende mal fix Gentoo draufspielen und am So. Abend wieder Win zurückspielen  oder einfach nur "schnell" zwischen verschiedenen Installationen / BS wechseln

 

----------

## hds

kann ja sein, das ich was uebersehe.. aber:

warum nehmt ihr nicht SysRescueCD ???

sofern ihr nicht das overloadet reiser4 (full of debug code) nutzt, voll OK.

also, bei mir geht SysRescueCD mit ext2/ext3/reiser3.x,fat32 und ntfs

----------

## SinoTech

 *hds wrote:*   

> kann ja sein, das ich was uebersehe.. aber:
> 
> warum nehmt ihr nicht SysRescueCD ???
> 
> sofern ihr nicht das overloadet reiser4 (full of debug code) nutzt, voll OK.
> ...

 

Ok, habe mir das noch nicht so genau angesehen, aber finde es toll wie einfach man ein BACKUP von einer kompletten HDD (Partition) machen kann. Einfach per LiveCD starten (Oder USB-Stick), NFS mouten und rüberkopieren. Kann mir kaum vorstellen das es noch eine einfachere Möglichkeit gibt  :Smile: .

Bei mir ist es aber auch völlig egal das die HDD (Partition) während dessen "read-only" gemountet sein muss, in anderen Fällen mag eine andere Lösung womöglich besser sein.

Mfg

Sino

----------

## deejay

Hallo zusammen,

Eine weitere gute Variante ist, ich weiss nicht, ob es in dem Thread schon vorkam, aber ich glaube nicht, ein image mit partimage zu machen.

Habe ich schon öfters mit verschiedenen Systemen gemacht. Funktioniert einwandtfrei.

Einfach mit ner LiveCD booten (knoppix oder so) und partimage ausführen. Der Rest erklärt sich von selbst.

Ich finde, das ist eine unkomplizierte Lösung und die Wiederherstellung des Images ist auch ganz einfach.  :Smile: 

Schöne Grüße

deejay

----------

## aZZe

Hallo zusammen!

Habe mal versucht mir mittels einer Lvie-CD und dem beschriebenen Weg von slick ein Image von einem Windows2003 Server zu machen. Wollte das dann auf einem ähnlichen System installieren nur lieder bootet er irgendwie nicht. Mache ich auf dem System wo ich das Image erstellt habe einen Restore in die vorhandene Partition klappt es. Gehe ich aber hin mit Linux mitteln und lösche die Partition, lege eine neue an die exakt genau so groß ist, setze dort das bootflag und setze den Typ der Partition auf NTFS dann klappt es nicht mehr. Die Maschine kann einfach nicht mit dem zurückgespieltem Image booten. Geht das überhaupt mit Windows Systemen? Oder nur wenn man die ursprüngliche Partition verwendet? Das wäre wirklich sehr schade weil man so die Möglichkeit hätte eine Image auf einem Server zu erstellen und das dann auf mehere zu verteilen und das mit einfachen Mitteln ohne eine teure Imagesoftware zu benutzen.

Hat einer eine Idee?

----------

## slick

 *Quote:*   

> Geht das überhaupt mit Windows Systemen? 

 

Ich hatte es mit W2K vom Firmen-*hust*-laptop (NTFS) gemacht. Allerdings habe ich nicht den Rechner gewechselt, sondern nur um am WE mit Gentoo auf der Kiste zu spielen. 

Auch WinXP habe ich auf dieser Art, allerdings auch wieder auch der gleichen Maschine, gesichert und zurückgespielt.

Ich las mal davon das Windows bei Einbau eines neuen Mainbaord immer neu installiert werden muss, weil "irgendwie" der Bootloader recht nah an die Hardware gebunden war. Kann es etwas damit zu tun haben? Hast du ggf. die gleichen Symptome wenn du diese Platte direkt in den anderen Rechner baust?

----------

## aZZe

Schuld war der MBR. Ich habe ein Image von einer Partition gemacht und nicht von der gesamten Platte. Vorher den MBR mittels "dd" gesichert, nach dem restore zurückgespielt und dann lief es.

----------

## Niniveh

Moin  :Razz: 

Ich bin nun wirklich kein Profi, aber mir scheint die hier vorgestellte Backuplösung etwas umständlich.

Jedenfalls habe ich sie nicht wirklich verstanden.

Ich verlasse mich bislang auf eine Lösung mittels rsync -av --delete --progress Quelle Ziel.

Einmal brauchte ich sie und hat prima geklappt.

In diesem Wiki sind noch andere Mögleichkeiten beschrieben, wer will kann sie sich ja mal anschauen.

In diesem Wiki wird übrigens Wert darauf gelegt, dass die Beschreibungen möglichst auch von wenig versierten Linuxnutzern verstanden werden können.

----------

