Datentransfer
Um unter Linux Dateien auf das Galaxy Nexus zu kopieren gibt es leider keine einfache und performante Lösung. Mit Airdroid kann man wunderbar ein, zwei Dateien hin und her kopieren, der Transfer läuft über das Wlan, was von haus aus schon eine Geschwindigkeitsbeschränkung mit sich bringt. Alle meine Versuche mit mtp (auch unter Ubuntu 13.04) brachen regelmäßig ab und waren auch nicht von hohen Geschwindigkeiten gekennzeichnet.
cyanogenmod, openssh, rsync
Ganz anders verhält es sich mit rsync über ssh, getunnelt durch adb via USB. Hier erreicht man wirklich sehr zufriedenstellende Transferraten (für große Dateien lesend 15 MB/s). Eine ausführliche Anleitung dazu gibt es bei alainwolf.ch. Hier eine Kurzfassung, wie ich den Kopiervorgang starte. Voraussetzungen:
- Android Debug Bridge am PC installieren (
apt-get install android-tools-adb
) - Handy per USB anstecken
- am Handy:
- Cyanogenmod 10.1 (momentan noch einen nightly build) installieren
Einstellungen - Entwickleroptionen
:Root-Zugriff
fürApps & ADB
aktivierenEinstellungen - Entwickleroptionen
:USB debugging
aktivieren
Dann am PC:
#pc:# adb root
#pc:# adb remount
#pc:# adb -d forward tcp:8090 tcp:8090
#pc:# adb shell
root@android:/ # /system/bin/sshd -D -p 8090
Mit dem letzten Kommando wird der SSH-Dienst am Handy auf Port 8090
gestartet. Der Dienst wird absichtlich nicht im Hintergrund ausgeführt, er läuft nur während die adb shell
aktiv ist. Das adb -d forward
tunnelt den IP port 8090 durch USB auf den PC.
Jetzt funktioniert der Zugriff via rsync. Um ein Backup der virtuellen sdcard zu machen kann man folgendes Kommando verwenden:
rsync -e 'ssh -p 8090' -rv root@127.0.0.1:/mnt/sdcard/ ./
--exclude=Android/data/info.snowhow/files/tilestore/
--exclude=osmand/
Update 2015
Mit dem wunderbaren gratis App SSHelper wird das etwas einfacher: SSHelper am Handy starten, den SSH-Port via adb am PC weiterleiten
bernd@pc> adb -d forward tcp:2222 tcp:2222
und schon können die Fotos mit
bernd@pc> rsync -e 'ssh -p 2222' -av localhost:~/SDCard/DCIM/Camera/ ~/handypics/
synchronisiert werden.