Smartphone über USB verbinden
 

Heutige Smartphones verwenden zur Datenübertragung via USB-Kabel zum Rechner das MTP-Protokoll. Das Media Transfer Protocol (MTP) ist ein Netzwerkprotokoll zur Übertragung von Dateien zwischen mobilen Endgeräten (wie z. B. Smartphones) und PCs. Es ist eine Weiterentwicklung des Picture Transfer Protocol und wurde von Microsoft und Canon entwickelt. Während Linux das UMS-Protokoll (USB-Massenspeicher) von Haus aus unterstützt, muß für das MTP-Protokoll ein eigener Treiber installiert werden oder Software, welche das Protokoll unterstützt. Es wäre ja zu schön und zu einfach gewesen wenn sich das Smartphone wie ein gewöhnlicher USB-Stick verhält, einfach an den Rechner angestöpselt werden könnte um beliebig Dateien hin und her zu schieben. Aber so ist es halt wie mit vielem im Leben, alles hat seine Vor- und Nachteile.

Vorteile:

  • Das Gerät kann ohne vorheriges Abmelden ("Auswerfen") vom System abgezogen werden, da Schreibvorgänge nicht zwischengespeichert ("gepuffert"), sondern sofort ausgeführt werden.
  • Der Hersteller kann beliebige Dateisysteme auf dem Gerät verwenden.
  • Mit dem PC können Wiedergabelisten für den Player erstellt werden.
  • Der Funktionsumfang des Gerätes wird kaum gestört, da das Gerät gleichzeitig mit dem Computer auf denselben Speicher zugreifen kann.

Nachteile:
  • Es ist kein direkter Zugriff auf das Dateisystem möglich.
  • Das Protokoll wird nicht von älteren Betriebssystemen unterstützt.
  • Die MTP-Software unterstützt meist nicht alle Funktionen und Formate, die das Gerät bietet, bzw. hat Probleme beim Konvertieren.
  • Die Übertragung via MTP ist meist deutlich langsamer als beim USB-Massenspeicher-Zugriff.
Wie man sieht, gibt es genauso viele Vorteile wie Nachteile, wobei nach meinem Geschmack die Nachteile sogar überwiegen. Da stellt sich doch die Frage, warum nur verwendet man dann das MTP-Protokoll und nicht das UMS-Protokoll was den Zugriff erheblich erleichtern und beschleunigen würde? Das wird wohl ein Geheimnis der Smartphone Hersteller und Microsoft bleiben. Fakt ist, daß die Unterstützung in älteren Linux-Systemen entweder gar nicht oder nur vom Handy lesbar vorhanden war und erst so langsam die volle Unterstützung kommt. Bisher sind mir bekannt:
  • gvfs (Gnome Virtual File System), virtuelles Dateisystem des GIMP-Toolkits. Enthalten in Ubuntu ab Version 13.04, zudem als Backport verfügbar für 12.10 und 12.04.
  • libgphoto2, eine Bibliothek die Picture Transfer Protocol (PTP) mit einigen MTP-Erweiterungen unterstützt. Ursprünglich war nur Kameraunterstützung geplant.
  • libmtp eine Bibliothek, die extra für MTP entwickelt wurde. Sie enthält ebenfalls Kommandozeilenprogramme.
Und mein persönlicher Favorit:
  • jmtpfs ein auf FUSE und libmtp basierendes Filesystem um auf MTP Geräte zuzugreifen. Es wurde speziell dafür entwickelt um Dateien zwischen Linux (und Mac OS X) Systemen und neueren Android Geräten auszutauschen, welche MTP unterstützen, aber keinen USB-Massenspeicher.
Das Ziel von jmtpfs ist es, ein gut funktionierendes Dateisystem zu erstellen, das Tools wie find oder rsync ermöglicht wie erwartet zu funktionieren. Oder anders ausgedrückt, das MTP-Gerät soll sich nicht mehr wie ein MTP-Gerät verhalten, sondern eher wie ein USB-Massenspeicher mit dem vollen Zugriff des Dateisystems. Um jmtpfs zu verwenden, reicht es lediglich das Paket zu installieren:

# apt-get install jmtpfs

Nach dem Anstecken des Geräts, sollte dieses erkannt werden und wie ein normaler USB-Massenspeicher eingebunden werden.