Wie kann ich große .dmg-Dateien in kleine HD-Dateien mounten?

Ich habe eine 120 GB .dmg wo ich gerne ein Verzeichnis studieren möchte. Die HD meines Mac ist jedoch viel kleiner. Ich erhalte eine Warnung, dass Sie das Verzeichnis nicht mounten können.

Ich habe den Befehl verwendet, um das Bild zu erstellen

sudo dd if=/dev/sda of=/media/ubuntu/ntfsDisc/sda.hfs.dmg bs=512 status=progress

Wie können Sie einige Inhalte eines großen .dmg-Images in einer kleinen HD-Datei mounten/lesen?

Antworten (1)

Der Befehl sudo dd if=/dev/sda of=/media/ubuntu/ntfsDisc/sda.hfs.dmgerstellt keine mountbare dmg-Datei!

Ihr "sda" - das ist die vollständige /dev/disk0, übersetzt in OS X-Namenskonventionen - enthält wahrscheinlich mehrere Partitionstabellen (1. und 2. GUIDpt/MBR), freien Speicherplatz und mehrere Dateisysteme auf den verschiedenen Partitionen (sda1-sda4?) .

sda.hfs.dmg enthält also weder ein gültiges Dateisystem (Teile der Datei könnten jedoch extrahiert werden, um eines zu enthalten) noch verhält es sich wie ein typisches dmg. Stattdessen ist es eine rohe (Daten-)Datei.


Beispiel: Immer wenn ich einen USB-Stick mit OS X sichern muss (oder den Inhalt speichern muss, weil ich den USB-Stick für andere Zwecke benötige), führe ich Folgendes aus:

dd if=/dev/disk4 of=/Users/user/backup/OSXRescue.raw bs=1m

Neben der Hauptpartition enthält diese "rohe" Datei auch 3 Partitionstabellen (1. und 2. GUIDpt/MBR), etwas "nicht zugeordneten" Speicherplatz, eine EFI- und eine Wiederherstellungs-HD-Partition. Die Datei hat die gleiche Größe wie der USB-Stick und kann nicht gemountet werden, da sie kein echtes und konsistentes Dateisystem enthält, wie es von diskutil oder hdiutil erwartet wird.

Um diese OSXRescue.raw auf demselben USB-Stick wiederherzustellen, muss ich sie ausführen

dd if=/Users/user/backup/OSXRescue.raw of=/dev/disk4 bs=1m

Dies sollte eine exakte Kopie des Inhalts des Rettungs-Sticks wiederherstellen (sogar die Überreste gelöschter Dateien, die nicht in den Dateisystemen des ursprünglichen USB-Sticks vorkommen).

Ich kann auch ein anderes Laufwerk (mit mindestens der gleichen Größe wie der ursprüngliche USB-Stick) verwenden, um den vollständigen Inhalt des Rettungs-Thumb-Laufwerks darauf wiederherzustellen. Das Ergebnis ist vollständig bootfähig. Der vorherige Inhalt des externen Laufwerks wird jedoch überschrieben!


Um Ihre .tex-Datei zu retten, müssen Sie die "raw"-Datei auf eine echte Festplatte kopieren. Dadurch werden die ursprünglichen Partitionen wiederhergestellt und Sie sollten in der Lage sein, den falschen Partitionstyp von Partition 2 (diskXs2) zu ändern, dann die HFS+-Partition zu mounten und sie mit einem Datenwiederherstellungstool zu untersuchen.

Möglicherweise können Sie den HFS+-Teil der Rohdatei in OS X ähnlich wie in dieser Linux-Anleitung mit integrierten Tools oder nach der Installation zusätzlicher Tools (wahrscheinlich mit Homebrew ) mounten. Dies habe ich aber nicht getestet.

Kann man das Image irgendwie verwenden sda.hfs.dmgobwohl es nicht mountet?
@Masi Sicher, Sie können es auf eine andere Festplatte zurücksetzen und dann untersuchen. Dadurch wird der gesamte Inhalt Ihrer internen Festplatte auf einer externen wiederhergestellt. Sie können auch mit einem Hex-Reader nach dem Inhalt der tex-Datei in sda.hfs.dmg suchen (ich bevorzuge die Endung *.bin oder *.raw) (wenn Sie bestimmte Zeichenfolgen der verlorenen Datei kennen).
Wie können Sie das .dmg-Bild durchsuchen? Ich kenne den Pfad zu der Datei. Ich möchte .tex-Dateien durchsuchen. allgemein.
@Masi Die Rohkopie einer Festplatte ist keine "strukturierte" Datei oder kein Dateisystem (im Gegensatz zu einer JPEG-, einer Doc-Datei oder einem NTFS-Volume). Es sind nur ein paar Bits und Bytes. Sie können die Datei (ja, die 120-GB-Datei!) einfach in HexFiend (einem Hex-Editor) öffnen und nach bestimmten Zeichenfolgen suchen. Je nach Position der tex-Datei auf der Platte (= der Raw-Datei) kann dies eine Weile dauern, da mehrere GigaBytes gescannt werden müssen, um das erste Vorkommen des Suchbegriffs zu finden.
Können Sie zu Beginn irgendwelche Einzeiler nennen? Ich brauche einen systematischen Ansatz.
@Masi Nur ein paar Minuten, denn das ist kein Terminal-Befehl. Außerdem erhalten Sie dadurch keine "Datei zum Herunterladen". Wenn das Dateisystem mit der *.tex-Datei verschlüsselt wurde, finden Sie keine Zeichenfolge. Dann müssen Sie die Rohbilddatei (sda.hfs.dmg - Sie nennen sie immer noch dmg, aber es ist kein dmg) auf einer Festplatte wiederherstellen.