1975137

Datenaustausch zwischen Linux und Android

25.01.2015 | 09:55 Uhr |

Auf das Smartphone müssen Audiodateien oder Videos und auf den Linux-PC Fotos von der Kamera. Wie Sie den Dateitransfer zwischen Android-Geräten und Linux-Rechner am besten erledigen, zeigt dieser Artikel.

Linux und Android sind verwandte Systeme. Beide basieren auf dem Linux-Kernel, und bei beiden handelt es sich um freie Software, deren Quellcode öffentlich verfügbar ist. Man sollte daher annehmen, dass der Datenaustausch zwischen beiden Systemen kein Problem darstellt. Manchmal ist jedoch das Gegenteil der Fall. Wer ein paar Bilder oder Audiodateien vom Linux-PC auf ein Android-Smartphone kopieren möchte, wurde dabei bisher von Linux nicht gut unterstützt. Bei neueren Systemen wie Ubuntu 14.04 LTS oder Linux Mint 16 wird das Android-Smartphone oder -Tablet aber durchaus erkannt und im Dateimanager angezeigt, sobald Sie es über ein USB-Kabel verbinden. Allerdings lassen sich bei einigen Android-Geräten die Dateien nicht direkt öffnen, sondern nur kopieren. Und gelegentlich bricht die Verbindung ab. Sollten Sie diese Probleme haben, finden Sie hier Alternativen, die zuverlässiger und sogar schneller arbeiten.

Dieser Artikel stammt aus der LinuxWelt 4/2014

Das neue Ubuntu LTS, der große Desktop-Guide, Ihre Festplatte 20 x schneller, Linux statt Windows XP - das und mehr finden Sie in der neuen LinuxWelt 4/2014 .

Beschränkte Verbindungen: Seit Android 3.0 gibt es bei USB-Verbindungen nur noch die Optionen „MTP“ und „PTP“. Der bei Android 2.x vorhandene Modus als „USB-Massenspeicher“ ist weggefallen.
Vergrößern Beschränkte Verbindungen: Seit Android 3.0 gibt es bei USB-Verbindungen nur noch die Optionen „MTP“ und „PTP“. Der bei Android 2.x vorhandene Modus als „USB-Massenspeicher“ ist weggefallen.

1. Kommunikation mit Android über MTP

Bei älteren Android-Versionen wurden die Geräte von Linux als USB-Massenspeicher erkannt und wie ein USB-Stick eingebunden. Das klappte ohne Schwierigkeiten und bot eine relativ hohe Transfergeschwindigkeit. Mit Android 3.0 hat sich das geändert. Das Smartphone oder Tablet bietet jetzt in der Regel nur noch die Kommunikation über MTP (Media Transfer Protocol) und das ältere PTP (Picture Transfer Protocol) an. Der Umstieg war nötig, damit das Betriebssystem jederzeit vollen Zugriff auf die externe Speicherkarte hat, die auch den Apps als Datenspeicher dient. MTP wurde im Jahr 2004 von Microsoft und Canon vor allem für den Datentransfer zwischen Digitalkameras und MP3-Player entwickelt. Aber selbst unter Windows bereitet MTP immer wieder Probleme. Oft wird ein MTP-Gerät nicht erkannt, die Verbindung bricht ab, oder einzelne Dateien lassen sich nicht übertragen.

Unter Linux ist die seit 2006 entwickelte Bibliothek libmtp die Basis für fast alle MTP-Programme. Diese muss ständig gepflegt und weiterentwickelt werden, damit neue Geräte erkannt und richtig angesprochen werden. Ab Version 13.04 wurde MTP bei Ubuntu in das Gnome Virtual File System (gvfs) integriert, das auch für Netzwerk-Dateisysteme wie FTP, SFTP und SMB (Windows-Freigaben) zuständig ist. Dadurch ist es möglich, mit einen Dateimanager wie Nautilus über MTP auf ein Android-Gerät zuzugreifen. Eine entsprechende Entwicklung gibt es mit kio-mtp auch für den KDE-Desktop. Mediaplayer wie Amarok, Banshee oder Rhythmbox zeigen MTP-Geräte ebenfalls an und beherrschen die Wiedergabe der Audiodateien. Unsere Tests mit den aktuellen Distributionen Ubuntu 13.10, 14.04 LTS und Linux Mint 16 offenbarten aber nach wie vor Schwächen bei der MTP-Unterstützung: Ein Samsung Galaxy S3 wurde zwar erkannt, aber Dateien auf dem Smartphone ließen sich über die Dateimanager Nautilus oder Dolphin nicht direkt öffnen. Stattdessen gab es eine Fehlermeldung (siehe Bild). Es war jedoch möglich, Bild- oder Audiodateien auf das Smartphone zu kopieren oder von diesem herunterzuladen. Bei Tablets wie dem Google Nexus 7 oder Asus TF201 traten diese Probleme dagegen nicht auf, dafür war die Datenübertragung ärgerlich langsam.

Geniale Android-Apps für Linux-Admins

Einbinden über das Startmenü: Für go-mtpfs können Sie ein Icon in der Starterleiste unterbringen und das Android-Gerät hier ein- und aushängen.
Vergrößern Einbinden über das Startmenü: Für go-mtpfs können Sie ein Icon in der Starterleiste unterbringen und das Android-Gerät hier ein- und aushängen.

2. Alternativen MTP-Zugriff installieren

Je nach verwendeten Geräten werden viele Anwender wahrscheinlich tolerieren können, was Ubuntu, Linux Mint und andere in puncto MTP zu bieten haben. Wenn nicht, gibt es Alternativen: Probieren Sie beispielsweise go-mtpfs , das in unseren Tests mehr Stabilität und Geschwindigkeit bot. Wer ältere Distributionen einsetzt, muss ohnehin Software für MTP nachinstallieren.

Für Ubuntu 13.04, 12.10 und 12.04 gibt es fertige Pakete von go-mtpfs. Für die Installation führen Sie in einem Terminalfenster (Strg-Alt-T) die folgenden drei Zeilen aus:

sudo add-apt-repository ppa:webupd8team/unstable sudo apt-get update sudo apt-get install go-mtpfs gomtpfs-unity

Drücken Sie Win-A, um im Ubuntu-Dash mit go-mtpfs das neu installierte Tool zu suchen, und ziehen Sie dann das Icon „Mount Android Device“ auf den Starter. Über den Kontextmenüpunkt „Mount Android Device“ des Icons können Sie jetzt Android-Geräte einhängen und über „Unmount Android Device“ wieder aushängen. Im Dateimanager sehen Sie Ihr Android-Smartphone dann unter „Geräte“, oder Sie steuern das Verzeichnis „/media/MyAndroid“ an. Wenn Sie go-mtpfs unter einem neueren Linux wie Ubuntu 14.04 LTS verwenden möchten, müssen Sie die Binärdatei selbst erstellen. Führen Sie zunächst die folgenden vier Terminal-Befehle aus:

sudo apt-get install golang-go libusb-1.0.0-dev git mkdir /tmp/go export GOPATH=/tmp/go go get github.com/hanwen/go-mtpfs

Kopieren Sie danach die Datei „gomtpfs“ aus dem Verzeichnis „/tmp/go/bin“ nach „/usr/local/bin“. Das Tool verwendet Fuse (Filesystem in Userspace), daher müssen Sie Mitglied der Gruppe „fuse“ sein, damit Sie auch ohne root-Rechte Dateisysteme einhängen dürfen.

Sie erledigen das mit der Befehlszeile sudo adduser [User] fuse , wobei Sie „[User]“ durch Ihren Benutzernamen ersetzen. Melden Sie sich dann neu am System an. Erstellen Sie ein Verzeichnis, in das Sie Ihr Android Gerät einhängen wollen, etwa mit mkdir /media/MyAndroid, und erlauben Sie Zugriff für alle mit chmod 777 /media/MyAndroid . Der Befehl go-mtpfs /media/MyAndroid & bindet das per USB angeschlossene Gerät ein, und

fusermount -u /media/MyAndroid

hängt es wieder aus.

Wenn Sie das komfortable Startmenü-Icon verwenden wollen, laden Sie das Paket „ go-mtpfs-unity_0.1-1~20130108~webupd8~raring_all.deb “ herunter. Entpacken Sie es im Dateimanager über den Kontextmenüpunkt „Hier entpacken“, und kopieren Sie den Inhalt des Ordners „usr“ nach „/usr“. Dafür benötigen Sie root-Rechte ( gksudo nautilus ). Anschließend fügen Sie das Icon in das Startmenü ein wie oben beschrieben.

Da in Ubuntu 14.04 LTS Android-Geräte automatisch eingebunden werden, müssen Sie das Gerät in Nautilus zuerst aushängen, bevor Sie go-mtpfs verwenden. Die Automount-Funktion von gvs (-> Punkt 1) lässt sich derzeit nicht gezielt für einzelne Dateisysteme abschalten. Ein möglicher Workaround: Benennen Sie die Datei „/usr/share/gvfs/remote-volume-monitors/mtp.monitor“ um, und starten Sie das System neu. Dann unterbleibt die automatische Erkennung.

Steuerzentrale im Browser: Die Oberfläche der Android-App Airdroid lässt sich unter Linux über den Browser aufrufen. Per Klick auf das Icon „Dateien“ rufen Sie hier den Dateimanager auf.
Vergrößern Steuerzentrale im Browser: Die Oberfläche der Android-App Airdroid lässt sich unter Linux über den Browser aufrufen. Per Klick auf das Icon „Dateien“ rufen Sie hier den Dateimanager auf.

3. Datenaustausch über den Browser

Das USB-Kabel ist zwar das schnellste Übertragungsmedium, aber nicht unbedingt das bequemste. Es gibt jedoch zahlreiche Lösungen für Android, die den Zugriff über WLAN ermöglichen. Eine davon ist die kostenlose App Airdroid . Airdroid leistet deutlich mehr als den einfachen Dateitransfer. Sie können darüber SMS empfangen und senden, Fotos, Musik sowie Videos verwalten, anhören oder ansehen, auf die Kontakte zugreifen und vieles mehr.

Nachdem Sie die App gestartet haben, sehen Sie eine IP-Adresse, über die Sie die Weboberfläche im Browser am PC aufrufen. Auf dem Smartphone müssen Sie die Verbindung mit „Accept“ bestätigen. Im Browser erscheint eine Oberfläche mit einigen Icons. Hinter „Dateien“ verbirgt sich ein ausgewachsener Dateimanager mit Up- und Download-Funktion. Der Upload kompletter Ordner funktioniert bisher nicht in Firefox, dafür benötigen Sie Google Chrome . Einzelne Dateien lassen sich mit beiden Browsern hochladen. Beim Download mehrerer Dateien oder eines einzelnen Ordners landet eine ZIP-Datei auf Ihrer Festplatte.

Die Funktionen hinter „Musik“, „Videos“ und „Fotos“ verhalten sich ähnlich. Es gibt jeweils eine Download- und eine Upload-Schaltfläche, bei Bedarf lassen sich mehrere Dateien für den Download markieren. Bei Fotos gibt es Vorschaubilder. Musikdateien und Videos lassen sich direkt im Browser abspielen, sofern die üblichen Dateiformate wie MP3, OGG, AVI oder MKV vorliegen.

Dateizugriff per SSH: Die App Sshelper zeigt unter Android die IP-Nummer und den Port des SSH-Servers an. Im Dateimanager Nautilus greifen Sie dann über „sftp://IPNummer: Port“ auf die Dateien zu.
Vergrößern Dateizugriff per SSH: Die App Sshelper zeigt unter Android die IP-Nummer und den Port des SSH-Servers an. Im Dateimanager Nautilus greifen Sie dann über „sftp://IPNummer: Port“ auf die Dateien zu.

4. Dateitransfer über Samba, FTP und SSH

Im Zusammenspiel von Android und Linux können auch die klassischen Netzwerkprotokolle zum Einsatz kommen. Wenn Sie ohnehin schon Freigaben für Windows-Rechner unter Linux eingerichtet haben empfiehlt sich eine App wie der ES Datei Explorer , der nicht nur FTP, sondern auch Samba beherrscht.

Ein anderer Weg ist die Installation eines SSH/SFTP-Servers wie Sshelper unter Android. Nach dem Start zeigt Ihnen die App die IP-Nummer des Smartphones an, beispielsweise 192.168.0.24. Unter Linux starten Sie dann einen Dateimanager wie Nautilus. Drücken Sie die Tastenkombination Strg-L, um das Eingabefeld „Ort:“ einzublenden, tippen Sie sftp://192.168.0.24:2222 ein, und bestätigen Sie mit Enter. Geben Sie einen beliebigen Benutzernamen und als Passwort admin ein, um die Verbindung herzustellen. Danach können Sie im Dateimanager auf das komplette Android-Dateisystem zugreifen, Dateien kopieren oder umbenennen und über die Netzwerkverbindung öffnen.

Nachrichten zwischen Android und Linux austauschen

In Airdroid (> Punkt 3) können Sie über das Menü unter „Einstellungen -> Remote-Benachrichtigungsservice“ die Option „AirDroid Remote-Benachrichtigungsservice“ aktivieren. Nachrichten von Ihrem Android-Gerät, etwa über eingegangene Mails oder Chat-Anfragen, erscheinen dann im Airdroid-Browser-Fenster. Da Sie das Browser-Fenster aber wahrscheinlich nicht permanent im Blick haben, bietet sich für diesen Zweck mit dem kostenlosen Linconnect eine bessere Lösung an. Installieren Sie zuerst den Server unter Linux im Terminal:

wget --quiet https://raw.github.com/hauckwill/linconnect-server/master/LinConnectServer/install.sh chmod +x install.sh ./install.sh

Folgen Sie den Anweisungen des Install-Scripts auf dem Bildschirm. Starten Sie die Linconnect-App auf dem Smartphone, und führen Sie zur Konfiguration die angezeigten drei Schritte durch. Danach erscheinen die Benachrichtigungen des Smartphones in einem kleinen Fenster auf dem Linux-Desktop.

0 Kommentare zu diesem Artikel
1975137