FUSE auf dem Mac

FUSE (Filesystem in Userspace) ist ein Linux-Kernel-Modul, das es ermöglicht, Dateisystem-Treiber aus dem Kernel-Mode in den User-Mode zu verlagern. Es erlaubt nicht-privilegierten Benutzern, eigene Dateisysteme zu mounten.

Aufgrund der Verwendung des auch für normale Anwendungsprogramme üblichen User-Mode – dank dessen sich der Programmcode nicht mit den Beschränkungen und Besonderheiten des Kernel-Modes auseinandersetzen muss – sind eine Vielzahl von Treibern entstanden. Einige dieser Dateisystem-Treiber bilden statt Festplatten und anderen Speichermedien ganz andere Datenstrukturen in Form eines navigierbaren Dateisystems ab.

(wikipedia über FUSE)

Seit kurzem gibt es nun von FUSE einen port für den Mac unter dem Namen MacFUSE. Auf der Google Code Seite finden sich die Sourcen, sowie fertige Binaries. Ich habe die Binarys installert um die ganze Sache einmal zu Testen. Nach dem Herrunterladen findest du ein .tar.gz file auf dem Schreibtisch. Im Terminal bitte folgendes eingeben:

$ cd Desktop
$ sudo tar -C / -jxvpf fuse-binaries-0.1.0b006.tar.bz2

Das sollte die fertig compilierten Binaries installieren. Mitgeliefert wird das sshfs, was es erlaubt das Dateisystem eines entfernten Rechners in das eigene einzubinden. Das Mouten erfolgt über das Terminal, zuerst muss aber ein Ordner für den Mountpoint erzeugt werden. Da Mac OS X Volumes im Ordner /Volumes mountet, legen wir dort einen Ordner an (man kann aber auch jeden anderen Ordner nutzen):

$ mkdir /Volumes/example.com

Danach mounten wir das Dateisystem mit sshfs

$ sshfs username@example.com/path: /Volumes/example.com -oping_diskarb,volname=example.com

Nach der Eingabe des Passwortes, sollte nun auf dem Schreibtisch ein Volumen mit dem Namen example.com auftauchen. Das auswerfen sollte allerdings nicht über den Finder sonder ebenfalls über das Terminal geschehen:

$ umount /Volumes/example.com

Eine weitere Erweiterung für das FUSE ist die unterstützung von Read/Write auf NTFS-Volumes. Mac OS X unterstützt von Haus aus leider nur Read-Access auf NTFS-Volumes. Die Bootcamp-Nutzer unter euch wird es freuen.

Zuerst laden wir uns die Sourcen von NTFS-3g herrunter. Auch hier erhalten wir wieder eine tar.gz, Datei, die einfach durch doppelklicken ausgepackt werden kann. Da NTFS-3g offiziell nicht für Mac OS X ausgeliefert wird und normalerweise das Configure-Script mit der Fehlermeldung abbricht, dass es nur auf Linux installiert werden kann, muss das Skript ein wenig angepasst werden. Hierzu den Ordner ntfs-3g-0.20070102-BETA im Finder öffnen und die darin enthaltenen datei configure (genau diese nicht, eine mit Erweiterung) in einem Editor (TextEdit sollte reichen) öffnen. Nach der Zeile

case "$target_os" in

findet sich die Zeile

linux*)

In dieser löschen wir Linux und speichern die Datei ab. Dann müssen wir noch eine Environment-Variable anpassen und das Configure-Skript laufen lassen:

$ CFLAGS="-D_FILE_OFFSET_BITS=64 -D__FreeBSD__=10" ./configure --prefix=/usr/local

Nach einiger Zeit sollte dies abgeschlossen sein. Danach noch das obligatorische:

$ make
$ sudo make install

und NTFS-3g sollte installiert sein und kann mit dem Befehl ntfs-3g genutzt werden.

to be continued…

Hosting, Macintosh | 13.01.2007 - 13:37

Bisherige Kommentare

  1. Yene schrieb am 14.01.2007 um 16:33

    Ich musste vor dem Compilieren von ntfs-3g noch die PATH Variable anpassen: PATH=”$PATH:/usr/local/bin”

  2. Markus Denhoff schrieb am 14.01.2007 um 16:36

    Danke für den Hinweis. Das könnte sein. Ist mir aber nicht aufgefallen, da ich das schon wegen anderen Sachen eingetragen hatte.



Neuer Kommentar