Ext2/Ext3 Partitionen unter MacOS X


Aus Macwrench

Wechseln zu: Navigation, Suche
Dieser Artikel beschreibt eine Funktion bzw. ein Programm für das Betriebssystem "Linux".
  Info.png
Mit OSXFUSE, dem Fork von MacFuse (das nicht mehr weiterentwickelt wird), existiert wohl mittlerweile wieder eine Möglichkeit, unter Mac OS X auf Ext2-/Ext3-Volumes zuzugreifen. Die ExtFS-Unterstützung erlaubt zwar standardmäßig nur lesenden Zugriff (vermutlich mangels Stabilität), dies lässt sich offenbar jedoch auch recht einfach ändern.
 

Um Linux-Partitionen mit den Dateisystemen Ext2, Ext3 oder Ext4 unter MacOS X nutzen zu können, kommt man derzeit leider immer noch nicht um Drittsoftware herum, da das Dateisystem von Haus aus nicht unterstützt wird. Anders herum allerdings ist es mittlerweile jedoch Möglich, auch schreibend auf HFS+ formatierte Laufwerke unter Linux zuzugreifen (mit aktiviertem Journaling nur lesend).

Aus diesem Grund soll an dieser Stelle der aktuellen Stand der Dinge verfolgt und beschreiben werden, wie es derzeit mit dem ext[2,3,4]fs-Support unter MacOS X so bestellt ist. Eines Vorab: für den Zugriff auf Ext4-Volumes scheint der kommerzielle Paragon-Treiber im Moment (Stand: Nov. 2010) die einzig verfügbare Lösung zu sein.

Inhaltsverzeichnis

Möglichkeiten für den Datenaustausch zwischen ExtFS und HFS+

Prinzipiell existieren verschiedene Möglichkeiten, unter Mac OS X auf ExtFS-formatierte Partitionen zuzugreifen oder sogar selbige im täglichen Gebrauch unter Mac OS X zu betreiben. Dabei ist zunächst anzumerken, dass solche Platten üblicherweise eine MBR-Partitionstabelle haben (wie auch Laufwerke mit Fat-/NTFS-Partitionen) und daher an einem Mac nicht bootfähig sind (MBR-Volumes sind wohl auch an Macs bootfähig, Quelle: The rEFIt Project).

Freie Softwarelösungen

  • mit MacFUSE und ext2fuse das Dateisystem in den Userspace laden (siehe verlinkter Artikel, letzte Version vom 26. Juni 2008)
  • mit ext2fsx die ExtFS Unterstützung nachinstallieren. Ext2 funktioniert, Ext3 allerdings unstable. Ext4 gar nicht (letzte Version vom 3. Dez. 2006)

Dabei gibt es leider einen Haken: scheinbar alle oben genannten Open Source Projekte leiden unter demselben Symptom: Entwickler- bzw. Zeitmangel; sie werden allesamt nicht mehr aktiv betreut und weiterentwickelt.

Prinzipiell dürften alle genannten Lösungen zwar mehr oder weniger elegant und zuverlässig funktionieren (incl. MacFUSE). Allerdings bleibt die Frage ob es ratsam ist, über Dateisystemerweiterungen, die nicht mehr aktiv weiterentwickelt und gepflegt werden, auf Datenträger zuzugreifen und damit u.U. einen Datenverlust zu riskieren.

Kommerzielle Softwarelösungen

Die Kommerzielle Variante habe ich selber nicht getestet, da ich nur hin und wieder auf ExtFS Volumes zugreifen muss und den Rest üblicherweise über das Netzwerk erledige. Daher kann sie nicht bewerten, Kommentare und Erfahrungsberichte sind aber immer willkommen (bitte auf der Diskussionsseite). Derzeit ist dies aber wohl die einzige Möglichkeit, auf Ext4-Volumes zuzugreifen (und auch die einzige aktiv weiterentwickelte Software für diesen Zweck).

Weitere Möglichkeiten

  • Zugriff über Linux (aktuelle Linux-Distributionen unterstützen HFS+ direkt)
  • Zugriff über eine Virtualisierungsumgebung wie VirtualBox

Für eine sichere und zuverlässige Datenübertragung dürfte daher im Moment kein Weg an einem virtualisierten Linux (z.B. in einer VirtualBox) vorbeigehen ... (Stand: 29. Nov. 2009)

Außerdem bietet sich dafür natürlich auch die umgekehrte Variante an, d.h. die Verwendung von HFS+ Volumes unter Linux. In aktuelleren Distributionen (getestet mit Ubuntu) wird HFS+ von Haus aus unterstützt, zum Schreiben ist allerdings das Journaling vorher zu deaktivieren (ansonsten hat man nur lesenden Zugriff). Beim schreibenden Zugriff (v.a. Löschen von Verzeichnissen) scheint die Unterstützung jedoch noch fehlerhaft zu sein, in der Regel sollten sich die Fehler jedoch durch eine Reparatur unter Mac OS X wieder beheben lassen.

Zugriff über ein virtualisiertes Linux

Die zuverlässigste, wenn auch nicht unbedingt performanteste (und eleganteste) Möglichkeit ist es wohl, ein Linux der Wahl in einer Virtualisierungsumgebung wie VirtualBox zu installieren und anschließend den Zugriff auf die Ext-Formatierten Laufwerke über die Ordnerfreigabe der Virtualisierung vorzunehmen. Das hat allerdings einige wesentliche Einschränkungen:

  • Der Datenzugriff erfolgt dann unter Linux, d.h. der Zielordner ist ein in VirtualBox für das Gastsystem freigegebener Ordner auf der HFS-formatierten Mac-Partition
  • Der ExtFS-Zugriff ist nur auf externe Datenträger möglich, da AFAIK kein direkter Zugriff auf die internen Laufwerge des Wirtsystems möglich ist

Hinweise zur VirtualBox:

  • Bei Verwendung von VirtualBox ist zu beachten, dass die Open Source Variante keinen USB-Support hat und daher hierfür nicht zu gebrauchen ist.
  • Die Gasterweiterungen müssen selbstverständlich installiert sein, damit USB und die Ordnerfreigabe überhaupt funktionieren (VirtualBox > Menü "Geräte" > "Gasterweiterungen installieren"). Das muss bei jedem Kernel-Update wiederholt werden.
  • Außerdem ist ggf. das externe Gerät in den USB-Gasteinstellungen zu aktivieren (bzw. ein Filter dafür zu erstellen), damit es erkannt wird und genutzt werden kann.
  • Für Probleme mit dem VirtualBox-USB-Support siehe VirtualBox FAQ und Ubuntu Help, unter Ubuntu liegt es meistens an fehlenden Zugriffsrechten.

Für den täglichen Bedarf ist das daher eigentlich nicht zu gebrauchen, da viel zu aufwändig. Wer allerdings (wie in meinem Fall) nur mal eben Daten von einer ExtFS-Partition auf den Mac schaufeln will, für den mag dies definitiv praktikabel sein (zumal ich zu Testzwecken ohnehin ein virtualisiertes Linux auf der Platte habe).

Verwendung von Ext2FS

  Wichtig.png

Bitte unbedingt beachten:
Dieser Abschnitt behandelt eine Software, die nicht mehr aktiv weiterentwickelt wird. Die Verwendung dieser Anleitung erfolgt daher auf eigene Gefahr hin, Datenverluste sind nicht auszuschließen! Informationen, wie man andere von Mac OS X nicht direkt unterstützte Dateisysteme (wie z.B. NTFS) nutzen kann, sind im Artikel "MacFuse verwenden" zu finden.

 

Dazu existiert im Moment meines Wissens nur noch das Sourceforge-Projekt "ext2fsx" (MacUpdate Seite) als allerdings mittlerweile inaktives Projekt. Es hat(te) zum Ziel, einen Mac OS X Treiber für Ext2 (Extended 2 file system) herzustellen.

Da das Projekt allerdings nicht mehr aktiv betreut und weiterentwickelt wird, ist die Lauffähigkeit unter neueren Systemen als Mac OS X Tiger (Version 10.4) mehr als fraglich. Getestet habe ich es jedoch nur unter 10.4.x, was seit der Version 1.4d1 von ext2fsx auch möglich ist. Seit Version 1.4d3 (vom 27.8.2006) kann man zudem auch unter 10.4 schreibend auf Ext2 Volumes zugreifen. Die letzte stabile Version 1.3 ist dagegen nur unter Mac OS X 10.3 (Panther) lauffähig

Installation

Für Mac OS X Tiger muss die 1.4er Reihe benutzt werden, für Panther entsprechend die Version 1.3. Die Installation des Treibers ist dabei sehr einfach:

  1. Disk Image herunterladen ...
  2. ... und mounten
  3. Installationspaket "Ext2FS.pkg" installieren
  4. Neustart durchführen

Anschließend ist der ExtFS Volume Manager als PrefPane in den Systemeinstellungen zu finden, über den sich die Ext2/3 Volumes verwalten und einbinden lassen.

Außerdem gibt es noch einen "ExtFS S.M.A.R.T. Hard Disk Monitor" sowie einige Kommandozeilen-Tools

Deinstallation

Für die Deinstallation ist ein entsprechendes Skript im Disk Image enthalten, das durch Doppelklick ausgeführt werden kann.

Nutzung

Fehlermeldung

Die Readme-Datei ist für den Anfang eigentlich mehr als ausreichend, hier nur ein paar Hinweise vorweg:

Beim Anschließen der ext3 (journaled) formatierten Festplatte (die üblicherweise an meiner NSLU2 hängt) kam zuerst einmal die übliche Fehlermeldung, MacOS könne mit der Platte nix anfangen und möchte sie am liebsten formatieren (siehe Bild rechts). Die kann man getrost "ignorieren" (Klick auf den Button), im ExtFS Manager (Systemeinstellungen) werden dann die Ext2/3 Partitionen ordnungsgemäß angezeigt:

ExtFS Manager.png

Über den Knopf "Optionen" kann noch folgendes festgelegt werden:

  • Volume manuell oder automatisch aktivieren (einhängen / mounten / wie man es auch nennen will)
  • nur lesbar (standardmäßig: lesen und schreiben)
  • Zugriffsrechte ignorieren
  • Indizierte Verzeichnisse aktivieren

Hin und wieder erscheint jedoch der folgende Fehler und die Partition lässt sich nicht aktivieren:

Festplatten Fehler
Vorgang: Mount
Gerät: disk1s1
Nachricht: 
   Unsupported request (The filesystem may need repair. Please use Disk Utility to check the filesystem.)
0xF8DA000C

Wenn dieser Fehler erscheint, obwohl die Partition eigentlich ok ist, muss man einfach das ganze per Shell mounten, etwa mit diesem script:

 #!/bin/sh
 sudo kextload /Library/Extensions/ext2fs.kext
 mkdir ~/backup/
 sudo mount -t ext2 -o nosuid,w,m=777,user  /dev/disk1s1 ~/backup/
 sudo  chmod a+rwx ~/backup/

/dev/disk1s1 muss natürlich angepasst werden

Danke an jojoo für diesen Tipp! Weitere Erfahrungsberichte und Informationen finden sich im Forum des Projektes.

Siehe auch

Hintergrundinfos
Für Entwickler

Verfasser: hagbard, manuell mount Tip und Script (Ext2FS) von jojoo

Ansichten