Ubuntu rettet Mac

Posted in Computerkram by galak on 25 January 2015

Ein Bekannter brachte mir neulich hilfesuchend sein MacBook, leider sei die Festplatte defekt und daher die Daten futsch - ob ich denn mal nachsehen kann. Eine Anfrage bei Gravis (Mac-Dienstleister und Verkäufer) hatte lediglich den Defekt bestätigt.

Na mal sehen was Linux da machen kann - also

- Platte ausgebaut und an nen externen Controller gehangen (ein hilfreicher kleiner Adapter, solange man beim Anschließen die richtige Reihenfolge einhält, sonst riskiert man evtl. einen Kurzschluß)

- Image der Platte ziehen mittels:

ddrescue /dev/sdx /rettemich/image.img logfile 

wobei /dev/sdx die gesuchte Platte markiert, dazu am besten direkt nach dem Anstöpseln

dmesg

eingeben und damit den "Anschluß" der Platte ermitteln.

Bei Fehlern einfach den ddrescue-Befehl erneut eingeben, das Programm versucht dann, die fehlerhaften Sektoren erneut zu lesen.

- jetzt wird's etwas verzwickt, denn wir haben das Image einer ganzen Festplatte erstellt, zum Datenretten brauchen wir aber meist eine Partition (einen Abgegrenzten Abschnitt der Platte mit entsprechendem Dateisystem).

Hier half der folgende Link weiter..

Um die richtige Partition einzubinden, muss man wissen wo diese beginnt (sog. offset)

sudo parted image.img unit B print 

ergibt bei mir folgendes Ergebnis:

Modell:  (file) Festplatte  /rettemich/image.img:  320072933376B Sektorgröße (logisch/physisch): 512B/512B Partitionstabelle: gpt Nummer  Anfang         Ende           Größe          Dateisystem  Name                  Flags  1      20480B         209735679B     209715200B     fat32        EFI system partition  boot  2      209735680B     319422910463B  319213174784B  hfs+         Customer  3      319422910464B  320072912895B  650002432B     hfs+         Recovery HD 

Partition 2 ist die mit den "wichtigen Daten" und wir brauchen ihren "Anfang", hier also 209735680. Damit können wir jetzt so tun, als wäre diese Partition Teil einer echten Festplatte:

 sudo losetup -o 209735680 /dev/loop0 /rettemich/image.img sudo fsck -f /dev/loop0 sudo mkdir /mnt/rettemich sudo mount /dev/loop0 /mnt/rettemich 

Damit haben wir den "DatenTeil" des Backups auf eine virtuelle Festplattenpartition umgebogen, diese auf Konsistenz überprüft und letztlich ins Dateisystem von Linux eingebunden. Die Daten darauf können wir nun in aller Ruhe sichten und retten..