FUSE
Nachtrag 2004-08-14
Referenzen
Problem mit FUSE Version 2.2.1
Momentan wird FUSE in Version 2.2.1 als Package für Debian geliefert.
Bei diesem haben sich die gültigen Optionen für fusermount
geändert, so daß ein Versuch das Mobiltelefon via mount -t siefs
einzuhängen mit folgendem Fehler abbricht:
/usr/bin/fusermount: unknown option -x Try `/usr/bin/fusermount -h' for more information
Ich habe bis Ende April keine Zeit mich darum zu kümmern, werde dann Kontakt mit den Autoren aufnehmen um zu sehen, was sich machen läßt.
2005-04-03 (mw)
SieFS - Siemens Mobiltelefon als Dateisystem auslesen
Ich wollte schon immer die Bilder aus dem Siemens MC60 meiner Frau auf dem Rechner weiterverarbeiten. Das USB-Datenkabel im Telefonladen war uns aber viel zu teuer, so daß ich das immer wieder aufschob. Bis ich bei Conrad [1] ein Datenkabel (Bestellnummer 760406) zu einem erträglichen Preis entdeckte.
scmxx
Aus meinen Recherchen nach geeigneten Programmen kannte ich scmxx [2], für das es ein Debian-Paket gibt. Dieses bekam auch die Verbindung hin, aber damit bekam ich nur ein paar Informationen und oft die Meldung, daß der betreffende Befehl für das MC60 nicht implementiert ist.
fuse
Irgendwo las ich dann von SieFS [3]. Damit sollte alles besser gehen.
Doch vor dem Preis kommt bekanntlich der Schweiß und so war es auch
hier. ``SieFS is based on FUSE, Filesystem in USErspace, an excellent
tool for creating custom filesystems with minimal effort.'' Minimaler
Aufwand also. Ein Debian-Paket für siefs habe ich nicht gefunden,
allerdings diese:
fuse-source - Filesystem in USErspace (source for kernel module) fuse-utils - Filesystem in USErspace (utilities) libfuse-dev - Filesystem in USErspace (development files)
Das Kernel-Module muß für den installierten Kernel kompiliert werden.
Zum Glück hatte ich schon vor einiger Zeit Kernel für Debian
übersetzt, so daß ich die Verzeichnisse unter /usr/src schon
richtig eingerichtet hatte. Trotzdem klappte es nicht auf Anhieb, so
daß ich die Schritte hier noch mal aufgeschrieben habe.
Zunächst, als root:
apt-get install fuse-source
Danach, als mathias
cd /usr/src tar xzf fuse.tar.gz
Hierbei gab es eine Meldung von tar, daß es utime nicht setzen
konnte, diese hab ich ignoriert (so bin ich).
cd modules fuse fakeroot debian/rules binary-modules KSRC=/usr/src/kernel-headers-2.6.7-1-686 KVERS=2.6.7-1-686 KDREV=2.6.7-2
Der Aufruf fakeroot debian/rules binary-modules dürfte aus den
einschlägigen Dokumentationen bekannt sein. Was ich erst mühsam
herausfinden mußte waren die weiteren Parameter. KSRC ist noch
beschrieben und ist das Verzeichnis, über das die Kernel-Header
gefunden werden können. KVERS war auch dokumentiert. Ohne den
Parameter KDREV bekam ich beim Installieren aber immer den Fehler,
daß die Abhängigkeiten nicht aufgelöst werde können, weil
kernel-image-2.6.7-1-686 die Version 2.6.7-2 hat. Mit grep
habe ich im debian Verzeichnis nach den Einträgen in der control
Datei gesucht und bin dann auf den Parameter KDREV gekommen.
Nun noch fuse-utils und zum Übersetzen von siefs das Paket
<libfuse-dev> installiert und es kann los gehen. Zunächst habe ich nur
das Quellarchiv geholt und testweise übersetzt. Nachdem erste Tests
mit fusermount ... ./siefs ... funktionierten, griff ich mir mein
Kochbuch für frische Debianpakete [4] und bastelte mir ein Paket, daß
im Downloadverzeichnis [5] abgeholt werden kann.
Das Bild ist vom Mobiltelefon aufgenommen und zeigt in etwa, was für eine Qualität die Bilder haben (mit besserem Licht, kann man etwas mehr erkennen). Rechts am Notebook hängt das Datenkabel, das Mobiltelefon hatte ich für die Aufnahme abgenommen.
Nachtrag 2004-08-14
Als ich heute den Notebook startete, mußte ich leider zur Kenntnis
nehmen, daß er bei der Zeile mount tmpfs on /tmp ... hing. Na gut,
dachte ich, kommentiere ich das aus, doch dann hing er bei
mount ... /dev/usb. Schließlich dämmerte es mir[, daran erkennt
man den Schnellmerker]. Ich hatte in /etc/fstab die Zeile, die in der
Datei README dafür empfehlen wurde, eingetragen:
/proc/fs/fuse/dev /mnt/siefs siefs device=/dev/ttyUSB0 0 0
und dabei nicht daran gedacht, daß das Datenkabel nicht ständig
angeschlossen ist - die Kamera muß nicht unbedingt angeschlossen sein
- genau genommen hatte ich nicht mit dieser Konsequenz gerechnet.
Beim mount -a in den initscripts hing der Rechner dann. Ich hab
die Zeile dann in
/proc/fs/fuse/dev /mnt/siefs siefs noauto,device=/dev/ttyUSB0 0 0
geändert und nun startet der Rechner ohne Probleme und auf die Kamera
kann ich trotzdem nach mount /mnt/siefs zugreifen.
Referenzen
[2] http://www.hendrik-sattler.de/scmxx/
[3] http://mirror01.iptelecom.net.ua/~dmitry_z/siefs/
[4] http://www.debian.org/doc/manuals/maint-guide/index.de.html
[5] http://weidner.in-bad-schmiedeberg.de/computer/linux/debian/siefs/download/