Forum: PC Hard- und Software Frage zu dd / linux / image


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Fred (Gast)


Bewertung
0 lesenswert
nicht lesenswert
an die Linux-Experten unter Euch: Ich habe ein Festplatte von einem 
Ubuntu (ext4), da ist eine kleine boot-Partition drauf (sda1) und eine 
von System(14GB). Die Platte insgesamt ist 120GB groß, der Rest von ca. 
100GB ist also frei.

Jetzt geht es ums sichern eines images:
wenn ich mit einer live-CD/Usb-Stick starte und angebe:

dd if=/dev/sda of=./gemountet/mein.img bs=4096 status=progress

dann wird die image-datei 120GB groß. obwohlich ja nur knapp 16GB 
Nutzdaten habe. Der Vorteil ist aber, ich kann die Festplatte so mit dd 
"andersherum" einfach wieder herstellen, und der MBR und alles ist 
richtig drauf und sie bootet.

wenn ich jetzt die Partitionen einzeln sichere, damit das Image nicht so 
groß wird, oder genauer die 2 - wie erhalte ich dann wieder ein 
lauffähiges System / wie muss ich wiederherstellen?

dd if=/dev/sda1 of=./gemountet/mein_sda1.img bs=4096 status=progress
dd if=/dev/sda2 of=./gemountet/mein_sda2.img bs=4096 status=progress

Ich hoffe, Ihr versteht, was ich meine.. :-)

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Bewertung
2 lesenswert
nicht lesenswert
Sichere dir noch den ersten Block von /dev/sda mit (count=1), dann hast 
du die Partitiontabelle und den Bootcode.

Das geht aber nur, wenn du MBR als Partitionierungsschema hast. Bei GPT 
ist der entsprechende Bereich größer und wird außerdem noch einmal in 
den letzten Blöcken des Mediums repliziert.

In jedem Falle solltest du auf der sicheren Seite liegen, wenn du 1 MiB 
vom Anfang von /dev/sda sicherst. Das ist der Bereich, der üblicherweise 
(bei Linuxen) vor der ersten Partition frei gehalten wird (also bs=1024k 
count=1).

von Le X. (lex_91)


Bewertung
1 lesenswert
nicht lesenswert
Wenn du anstelle vom kompletten /dev/sda die einzelnen Partitionen 
sicherst dann musst du schon mal den Zieldatenträger händisch 
partionieren, z.B. mit parted.
Das kann, je nachdem etwas fummelig, es gibt auf jeden Fall Potential 
dass das Endergebnis nicht so aussieht wie du es haben möchtest und das 
System dann nicht läuft.

Ich würde entweder:
- die komplette sda sichern und rückspielen, auch wenns etwas länger 
dauert. Diese Methode funktioniert m.M.n. am einfachsten.
oder
- beide Partitionen mittels rsync/tar/gz sichern.
Du hast dann ein Backup auf Dateiebene anstelle eines richtigen Images.
Auch in diesem Fall musst zu beim Zurückspielen den Zieldatenträger 
händisch partionieren (und sogar noch formatieren).

von dave4 (Gast)


Bewertung
0 lesenswert
nicht lesenswert
In diesem Fall müsstest du die Partitionstabelle sicher entweder über 
den ersten Block wie Jörg W. oden schrieb oder manuell per Abschreiben 
aus fdisk bzw. cfdisk.
Bei Wiederherstellen würdest du dann deine Images direkt in die neuen 
Partitionen schreiben.

von bingo (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Genau dafür gibt es CLONEZILLA

von Fred (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Ich habe nachgesehen: Typbezeichnung ist "gtp" und die 1. Partition 
fängt geht von 2048 bis 4095 und heißt "Bios boot", Größe 1M.

D.h. wenn ich alles davor sicher mit

dd if=/dev/sda of=./gemountet/mein_festplattenanfang bs=2048 count=1

sollte ich alles haben, oder?

beim Rücksichern müsste ich dann sicherstellen, dass ich sda1 wieder ab 
2014 hintue und gleiche Größe wie jetzt - Clonezilla hat schon seine 
Berechtigung! :-)

von Fred (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Ach nee, hoppla, das sind ja Sektoren, nicht Bytes also:

dd if=/dev/sda of=./gemountet/mein_festplattenanfang.img bs=512 
count=2048


Kann denn Clonezilla, gestartet als live-CD, images nur mit Nutzdaten 
erzeugen? also in meinem Fall 16GB siehe oben?

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Bewertung
1 lesenswert
nicht lesenswert
Fred schrieb:
> bs=2048 count=1

Nö.

Ich schrob doch oben: bs=1024k count=1.

bs=2048 wären 2048 Byte, nicht 2048 512-byte-Blöcke.

Was auch geht ist count=2048, der default ist bs=512.

Wenn das eine GPT ist, müsstest du anschließend nach dem Rücksichern 
noch mit [g]parted die zweite Replik der Tabelle am Ende des Mediums 
wiederherstellen lassen.

von dave4 (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Fred schrieb:
> beim Rücksichern müsste ich dann sicherstellen, dass ich sda1 wieder ab
> 2014 hintue und gleiche Größe wie jetzt - Clonezilla hat schon seine
> Berechtigung! :-)

Nachdem du den ersten Block (mit der Partitionstabelle) 
wiederhergestellt hast und ggf. einmal gebootet hast sollten die Devices 
/dev/sda1 und /dev/sda2 wieder auftauchen. Danach kannst du die Images 
direkt in diese Devices ausgeben.

von devzero (Gast)


Bewertung
1 lesenswert
nicht lesenswert
Einfach mit "sfdisk" die Parttabelle sichern und auch wiederherstellen, 
dann einfach die Partitionen zurueck spielen.
Bei GPT bleibt sogar dann die ID erhalten, kann man aber auch aendern.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Bewertung
1 lesenswert
nicht lesenswert
dave4 schrieb:
> Nachdem du den ersten Block (mit der Partitionstabelle)
> wiederhergestellt hast und ggf. einmal gebootet hast

Wenn ich die man page von partx richtig interpretiere, müsste man sich 
den Reboot sparen können mit

partx -a /dev/sda

von Εrnst B. (ernst)


Bewertung
0 lesenswert
nicht lesenswert
Fred schrieb:
> dd if=/dev/sda of=./gemountet/mein.img bs=4096 status=progress
>
> dann wird die image-datei 120GB groß. obwohlich ja nur knapp 16GB
> Nutzdaten habe.

gib dem "dd" noch ein "conv=sparse" mit, dann wird die Image-Datei zwar 
auch 120GB groß, belegt aber nur für die Nicht-0x00-Blöcke Platz.

(d.H. "du -h ./gemountet/mein.img" sagt was anderes als "ls")

Allerdings wird das trotzdem mehr als 16GB sein, wenn der Stick mal 
zwischendurch mehr Daten gesehen hat, und die nach dem logischem Löschen 
nicht raus-genullt/getrimmt worden sind.

von Rolf M. (rmagnus)


Bewertung
2 lesenswert
nicht lesenswert
Fred schrieb:
> Kann denn Clonezilla, gestartet als live-CD, images nur mit Nutzdaten
> erzeugen?

Ja. Gerade deshalb nimmt man ja Clonezilla statt ein einfaches dd. Es 
sichert dir den MBR und den genutzten Anteil der Partitionen, sofern es 
das Filesystem kennt, was bei ext4 natürlich der Fall ist.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Bewertung
1 lesenswert
nicht lesenswert
Rolf M. schrieb:
> Es sichert dir den MBR und den genutzten Anteil der Partitionen, sofern
> es das Filesystem kennt, was bei ext4 natürlich der Fall ist.

Wobei alles außer blödem FAT-FS die Daten bestmöglich über die 
Partitiion verstreut. Rührt noch aus der Zeit der rotierenden Spindeln, 
da man auf diese Weise die Daten so organisieren konnte, dass kurze 
Kopfwege entstehen für zusammengehörige Daten (einer Datei).

Kann man dann natürlich wieder dateiweise sichern (tar, dump, …), wenn 
sichergestellt ist, dass auch wirklich alle Metadaten dabei erfasst und 
restauriert werden.

Ein simples dd hat den Vorteil, dass es kleinster gemeinsamer Nenner ist 
und man den Kram eigentlich immer irgendwie irgendwo wieder extrahiert 
bekommt.

: Bearbeitet durch Moderator
von (prx) A. K. (prx)


Bewertung
1 lesenswert
nicht lesenswert
Wer sich jene Arbeit aufhalsen möchte, die einem Clonezilla abnimmt, 
kann natürlich auf partimage zurückgreifen.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.