Meilleure façon de connecter Galaxy Nexus (ICS) à Linux

13

Je peux connecter mon Galaxy Nexus à ma machine Kubuntu en utilisant le protocole PTP , mais c'est vraiment lent. J'ai lu cette interview pour savoir pourquoi Galaxy Nexus ne prend pas en charge le stockage de masse USB , et je suis allé sur http://www.android.com/filetransfer/ comme indiqué, mais je ne peux pas voir qui me permettra de se connecter à l'appareil à l'aide d'une machine Linux et MTP .

Est-ce que quelqu'un sait comment faire fonctionner MTP ou tout autre protocole?

Martyn
la source

Réponses:

7

Vous pouvez également essayer mtpfs ou gMTP . mtpfs permet de monter le périphérique MTP en tant que système de fichiers, tandis que gMTP est un programme autonome.

Chez AskUbuntu, il y a une réponse qui montre comment utiliser mtpfs.

elmicha
la source
gMTP semble fonctionner très bien pour moi pour copier des photos depuis mon ancien téléphone. Essayer de copier sur PTP a été pénible.
Ryan
1
gMTP n'est pas satisfaisant pour moi. Il est TRÈS lent et donne des erreurs avec les fichiers musicaux (il essaie de créer des albums pour chaque fichier transféré). gMTP plante également fréquemment dans Ubuntu. J'aime mieux la méthode ADB. J'utilise également SSHFS sur WiFi et quelques autres méthodes.
MountainX
6

Je vais développer l'idée de Ryan Conrad:

adb de android-tools est le chemin.

Je préfère suivre ce guide pour installer Eclipse avec android-sdk:

http://developer.android.com/sdk/installing.html

L'installation dépend uniquement de JDK. Aucune installation de nouveaux packages. Personnellement, je fais les mêmes étapes (= extraire deux dossiers n'importe où et configurer eclipse) de la même manière sur les distributions Ubuntu, Mint ou Debian et tout fonctionne.

Après avoir terminé ce guide classique, j'ai deux nouveaux dossiers: eclipse et android-sdks . Dans le dossier android-sdks ./platform-tools/adb est le chemin d'accès à l' adboutil, qui peut être utilisé pour push(télécharger) et pull(obtenir) des fichiers depuis un appareil Android - sans mtpfs ou montages supplémentaires.

Tout comme le adbprogramme en ligne de commande, il peut être automatisé en un tournemain. De plus, vous avez la vue Explorateur de fichiers d'Eclipse , qui fournit une belle structure de fichiers d'arborescence graphique et une interface de glisser-déposer de base (n'oubliez pas de sélectionner d'abord votre appareil dans la vue Appareils !).

Le gros inconvénient de cette méthode est que seul l' adboutil voit l'appareil et peut y accéder. Le reste de mon système, y compris Nautilus par exemple, ne voit toujours pas l'appareil. Mais après m'être habitué à la stabilité et à la robustesse de adbce n'est pas le problème pour moi.

furikuretsu
la source
1
adb est un problème de sécurité si vous le maintenez activé en permanence. Gardez à l'esprit qu'il n'y a pas de dialogue de phrase secrète ou quoi que ce soit. On peut contourner les verrous d'écran et même le cryptage complet de l'appareil. Surtout si vous le rechargez à des endroits inconnus (PC dans un cybercafé, etc.)
ce4
merci pour l'avis, ce4. Permettez-moi de demander alors: quels moyens pour accéder au stockage Android devrions-nous utiliser dans des endroits inconnus?
furikuretsu
1
ajouté sa propre réponse sur le bluetooth :-)
ce4
6

Vous pouvez utiliser le bluetooth .

Bluetooth FTP (profil de transfert de fichiers) est pris en charge par Linux et il existe l'application Bluetooth File Transfer qui ajoute cette fonctionnalité à Android. Ce n'est cependant pas si rapide (<200kb / s) selon vos versions bluetooth. -

Il y a un module de fusible appelé obexfs , voici mon Nexus S monté:

root@local:/tmp# obexfs -b f0:08:f1:xx:xx:xx -- /media/bla
root@local:/tmp# cd /media/bla
root@leo61326:/media/bla# ls -lh /media/bla/DCIM/
total 5,5K
drwxr-xr-x 1 root root    0 2012-05-25 16:09 100ANDRO
drwxr-xr-x 1 root root    0 2012-07-05 17:31 2012-06-09_Rafting
drwxr-xr-x 1 root root    0 2012-07-09 22:30 Camera

Certains explorateurs de fichiers le supportent directement via des plugins (nautilus / gnome / kde / ...) Voici quelques questions obex liées à Ubuntu.

ce4
la source
1
Cette réponse mérite plus de votes positifs - Je n'ai pas pu faire fonctionner MTP ou PTP avec mon installation Kubuntu.
Nathan Osman
J'espère que cela s'améliorera avec les nouvelles versions d'Ubuntu. J'en suis vraiment confiant. J'utilise principalement ADB sur la ligne de commande (que j'utilise beaucoup), c'est donc le chemin le plus rapide pour moi en ce moment. J'utilise aussi parfois "bluetooth-sendto some-file".
ce4
3

Vous pouvez utiliser adb et transférer à l'aide des commandes adb pull / push.

Je ne sais pas quelle distribution de linux vous utilisez, mais j'ai trouvé cela qui dit que MTP est empaqueté et disponible pour ubuntu via un paquet appelé mtp-tools .

Notez également que cela n'est pas spécifique à Android 3.x / 4.x, cela est vrai pour tous les appareils qui exécutent 3.x / 4.x qui n'ont pas de carte SD externe. Si l'appareil dispose d'un emplacement pour carte SD, vous pourrez monter l'appareil comme dans les versions précédentes d'Android.

Ryan Conrad
la source
2

mpfs est un système de fichiers basé sur FUSE qui peut monter le Nexus sur votre système.

mtpfs -o allow_other /media/MOUNTPOINT

Le montera pour vous. Pour démonter simplement démonter / media / MOUNTPOINT

stsquad
la source
0

Une autre option est WebDAV .

Configuration d'un serveur Android WebDAV

Sur mon Nexus 7 d'origine, j'ai installé WebDAV Server , l'ai ouvert, cliqué sur le bouton Démarrer et j'ai immédiatement pu voir mon /storage/sdcarddossier dans mon navigateur Web à l'URL affichée par l'application, c'est-à-direhttp://192.168.x.y:8080

Notez qu'avec WebDAV Server , vous avez également la possibilité de sélectionner Root (/) ou DCIM ainsi que SdCard comme racine WebDAV .

Utilisation du serveur WebDAV via Nautilus

Dans Nautilus, j'ai sélectionné "Se connecter au serveur ..." dans le menu Fichier, sélectionné "WebDAV (HTTP)", entré 192.168.x.ycomme serveur et 8080comme port et cliqué sur Connecter.

La navigation dans la hiérarchie des répertoires est plus lente que l'accès à d'autres partages réseau, mais pas irréalisable. La copie d'un seul fichier de 42 Mo via Nautilus a pris environ 12 secondes, soit 3,6 Mo / s.

Monter un lecteur WebDAV à partir de la ligne de commande

J'ai installé davfs2 et monté mon partage en /mntutilisant la commande:

sudo mount -t davfs http://192.168.x.y:8080 /mnt

La copie du même fichier de 42 Mo, mais avec un timing plus précis, a pris 12,88 s ou 3,24 Mo / s.

$ time cp music.fsb /tmp

real    0m12.880s
user    0m0.002s
sys     0m0.143s

Avertissements

  • L'accès WebDAV n'est pas sécurisé . Même si vous définissez un mot de passe sur le partage WebDAV, la connexion ne l'est toujours httppas https, elle n'est donc pas chiffrée. N'utilisez WebDAV que sur un réseau wifi sécurisé et n'activez certainement pas le serveur WebDAV lorsque vous êtes dans un cybercafé ou un autre wifi non sécurisé.
Mark Booth
la source
0

Vous pouvez utiliser le protocole FTP à la vitesse du câble USB avec cette application (pas que cela nécessite d'avoir adb, mais après avoir configuré la connexion / le transfert d'adb est rapide et indolore, et vous pouvez même afficher les fichiers dans votre gestionnaire de fichiers préféré.

https://play.google.com/store/apps/details?id=com.theolivetree.ftpserver

les instructions se trouvent dans la description de Play Store.

Andrey Losev
la source
0

Travailler MTP sur Ubuntu pour Galaxy Nexus, Nexus 7 et Acer A500 Par où commencer.

J'ai trouvé quelques instructions pour le Nexus 7 (que je venais d'apporter) sur ce site Ubuntu 12.04 - Automount Nexus 7 en mode MTP. Nous remercions l'auteur de cette page pour l'avoir compris. Les instructions que j'ai ci-dessous proviennent de ce site, sont coupées aux commandes, si vous voulez plus d'explications voir le site ci-dessus.

J'ai utilisé Ubuntu 12.10 et l'ai configuré pour mon Nexus 7, Galaxy Nexus et Acer A500. Instructions

Configurer FUSE

Changez /etc/fuse.conf pour qu'il soit lu par tous.

# sudo chmod a+r /etc/fuse.conf

Modifiez /etc/fuse.conf pour supprimer le commentaire # de user_allow_other afin que le fuse.conf par défaut ressemble à

# Set the maximum number of FUSE mounts allowed to non-root users.
# The default is 1000.
#
#mount_max = 1000

# Allow non-root users to specify the 'allow_other' or 'allow_root'
# mount options.
#
user_allow_other

Compiler et installer go_mtp

# sudo apt-get install libmtp-dev golang 
# mkdir /tmp/go
# export GOPATH=/tmp/go
# go get github.com/hanwen/go-mtpfs
# sudo mv /tmp/go/bin/go-mtpfs /usr/local/sbin/go-mtpfs
# sudo chmod a+x /usr/local/sbin/go-mtpfs

Créer des points de montage

Use the following as you need..
# sudo mkdir /media/Nexus7
# sudo chmod 777 /media/Nexus7
# sudo mkdir /media/GalaxyNexus
# sudo chmod 777 /media/GalaxyNexus
# sudo mkdir /media/A500
# sudo chmod 777 /media/A500

Configurer les règles udev

Utilisez votre éditeur préféré et créez le fichier suivant (supprimez toutes les autres règles Android udev que vous pourriez avoir expérimentées en premier).

# sudo vi /etc/udev/rules.d/99-android.rules

Collez le contenu suivant. vous pouvez supprimer les règles dont vous n'avez pas besoin. Les deux appareils Nexus semblent avoir les mêmes identifiants pour le chargeur de démarrage et la récupération. REMARQUE: vous devez remplacer # YOURLOGIN # par votre nom d'utilisateur / identifiant.

# Google Nexus 7 & Galaxy Nexus 16 Gb Bootloader & recovery mode
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e40", MODE="0666" # Bootloader
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="d001", MODE="0666" # Recovery

# Google Nexus 7 16 Gb PTP mode (camera)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e43", MODE="0666" # PTP media
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e44", MODE="0666" # PTP media with USB debug on

# Google Nexus 7 16 Gb MTP mode (multimedia device)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e41", MODE="0666" # MTP media
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e42", MODE="0666" # MTP media with USB debug on

# Google Nexus 7 MTP mode : automatic mount when plugged
ENV{ID_MODEL}=="Nexus_7", ENV{ID_MODEL_ID}=="4e41", ACTION=="add", RUN+="/usr/bin/sudo -u #YOURLOGIN# /usr/local/sbin/go-mtpfs -allow-other=true /media/Nexus7"
ENV{ID_MODEL}=="Nexus_7", ENV{ID_MODEL_ID}=="4e42", ACTION=="add", RUN+="/usr/bin/sudo -u #YOURLOGIN# /usr/local/sbin/go-mtpfs -allow-other=true /media/Nexus7"

# Google Nexus 7 MTP mode : automatic unmount when unplugged
ENV{ID_MODEL}=="Nexus_7", ENV{ID_MODEL_ID}=="4e41", ACTION=="remove", RUN+="/bin/umount /media/Nexus7"
ENV{ID_MODEL}=="Nexus_7", ENV{ID_MODEL_ID}=="4e42", ACTION=="remove", RUN+="/bin/umount /media/Nexus7"


# Google Galaxy Nexus 16 Gb Bootloader & recovery mode
#SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e40", MODE="0666" # Bootloader
#SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="d001", MODE="0666" # Recovery

# Google Galaxy Nexus 16 Gb PTP mode (camera)
SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", ATTR{idProduct}=="6865", MODE="0666" # PTP media
#SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", ATTR{idProduct}=="4e44", MODE="0666" # PTP media with USB debug on

# Google Galaxy Nexus 16 Gb MTP mode (multimedia device)
SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", ATTR{idProduct}=="685c", MODE="0666" # MTP media
SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", ATTR{idProduct}=="6860", MODE="0666" # MTP media with USB debug on

# Google Nexus 7 MTP mode : automatic mount when plugged
ENV{ID_MODEL}=="Galaxy_Nexus", ENV{ID_MODEL_ID}=="685c", ACTION=="add", RUN+="/usr/bin/sudo -u #YOURLOGIN# /usr/local/sbin/go-mtpfs -allow-other=true /media/GalaxyNexus"
ENV{ID_MODEL}=="Galaxy_Nexus", ENV{ID_MODEL_ID}=="6860", ACTION=="add", RUN+="/usr/bin/sudo -u #YOURLOGIN# /usr/local/sbin/go-mtpfs -allow-other=true /media/GalaxyNexus"

# Google Nexus 7 MTP mode : automatic unmount when unplugged
ENV{ID_MODEL}=="Galaxy_Nexus", ENV{ID_MODEL_ID}=="685c", ACTION=="remove", RUN+="/bin/umount /media/GalaxyNexus"
ENV{ID_MODEL}=="Galaxy_Nexus", ENV{ID_MODEL_ID}=="6860", ACTION=="remove", RUN+="/bin/umount /media/GalaxyNexus"


# Acer A500 16 Gb Bootloader & recovery mode
SUBSYSTEM=="usb", ATTR{idVendor}=="0502", ATTR{idProduct}=="3201", MODE="0666" # Bootloader
#SUBSYSTEM=="usb", ATTR{idVendor}=="0502", ATTR{idProduct}=="d001", MODE="0666" # Recovery

# Acer A500 16 Gb PTP mode (camera)
SUBSYSTEM=="usb", ATTR{idVendor}=="0502", ATTR{idProduct}=="33b2", MODE="0666" # PTP media
SUBSYSTEM=="usb", ATTR{idVendor}=="0502", ATTR{idProduct}=="33b1", MODE="0666" # PTP media with USB debug on

# Acer A500 16 Gb MTP mode (multimedia device)
SUBSYSTEM=="usb", ATTR{idVendor}=="0502", ATTR{idProduct}=="3341", MODE="0666" # MTP media
SUBSYSTEM=="usb", ATTR{idVendor}=="0502", ATTR{idProduct}=="3325", MODE="0666" # MTP media with USB debug on

# Acer A500 MTP mode : automatic mount when plugged
ENV{ID_MODEL}=="Acer_Iconia_Tab_A500", ENV{ID_MODEL_ID}=="3341", ACTION=="add", RUN+="/usr/bin/sudo -u #YOURLOGIN# /usr/local/sbin/go-mtpfs -allow-other=true /media/A500"
ENV{ID_MODEL}=="Acer_Iconia_Tab_A500", ENV{ID_MODEL_ID}=="3325", ACTION=="add", RUN+="/usr/bin/sudo -u #YOURLOGIN# /usr/local/sbin/go-mtpfs -allow-other=true /media/A500"

# Acer A500 MTP mode : automatic unmount when unplugged
ENV{ID_MODEL}=="Acer_Iconia_Tab_A500", ENV{ID_MODEL_ID}=="3341", ACTION=="remove", RUN+="/bin/umount /media/Nexus7"
ENV{ID_MODEL}=="Acer_Iconia_Tab_A500", ENV{ID_MODEL_ID}=="3325", ACTION=="remove", RUN+="/bin/umount /media/A500"

REMARQUE: si vous avez utilisé gedit et que vous avez modifié le fichier, vous devez supprimer 99-android.rules ~ car udev sera contrarié.

Ensuite, redémarrez udev

# sudo service udev restart

Modifier / etc / fstab

Add the following to /etc/fstab
DeviceFs(Nexus\0407)        /media/Nexus7         fuse.DeviceFs(Nexus\0407)      allow_other,rw,user,noauto    0    0
DeviceFs(Galaxy\040Nexu)    /media/GalaxyNexus    fuse.DeviceFs(Galaxy\040Nexu)  allow_other,rw,user,noauto    0    0
DeviceFs(A500)              /media/A500           fuse.DeviceFs(A500)            allow_other,rw,user,noauto    0    0

Fini.

Vous pouvez maintenant connecter vos appareils et le stockage interne sera disponible, vous devez vous rappeler de le démonter avant de le déconnecter, bien que cela ne semble pas faire de mal.

Remarque: il semble que l'ENV {ID_MODEL} pour le Nexus 7 soit devenu Nexus_7 à un moment donné (je pense avec la mise à jour Android 4.2).

Sur http://www.winters.org.nz/android-hints-tips-stuff/working-mtp-on-ubuntu

Abram
la source
0

Eh bien, il existe un outil très utile, son nom est "Wifi File Transfer". Téléchargez-le simplement sur Play Store sur votre appareil Android et installez-le. Il transforme votre mobile Android sur un mini serveur qui vous permet de télécharger et de télécharger des fichiers depuis et vers votre téléphone.

Shakalex
la source