Aller au contenu

[TUTO] Accéder à ses fichiers sous Linux


Minux

Recommended Posts

Bonjour,

Depuis la décision de Google de ne plus supporter le mode UMS (Usb Mass Storage) sur les Nexus, les données contenues sur la carte SD interne ne sont plus accessibles nativement sous linux.

Il existe plusieurs possibilités pour accéder à ses données sous son OS préféré, que je vais essayer de détailler ici.

1. Utiliser ADB

Une fois le SDK Android installé avec les Platform-Tools, vous avez accès à l'utilitaire adb. Celui-ci vous permet de transférer des fichiers sur / depuis votre Nexus depuis votre PC, de manière basique, mais efficace et stable.

Vous pouvez également vous passer du SDK en installant seulement les deux exécutables nécessaire à ce tuto (adb et aapt) : http://motyczko.pl/qtadb/linux_binaries.tar.gz

Une fois l'archive récupérée, il suffit de la décompresser et de lancer les commandes depuis le répertoire ainsi créé.

Note : La carte SD se trouve sous /storage/sdcard0/

Donc pour récupérer un fichier (le [repertoire/], facultatif, est fonction de l'endroit ou vous voulez placer le fichier, et doit exister sinon vous rencontrerez une erreur) :

adb pull /storage/sdcard0/[repertoire/]MonFichier

Pour envoyer un fichier :

adb push MonFichier /storage/sdcard0/[repertoire/]

Pour créer un répertoire à la racine de la carte SD :

adb shell mkdir /storage/sdcard0/repertoire

Pour supprimer un répertoire (celui-ci doit être vide) :

adb shell rmdir /storage/sdcard0/repertoire

Vous pouvez aussi utiliser adb pour toutes vos manipulations de fichier, comme si vous étiez sous linux, avec les commandes adb shell cp (copie), adb shell mv (déplacement), adb shell rm (suppression), etc.

2. Utiliser QtADB

QtADB est un utilitaire basé sur adb vu précédemment, mais en mode graphique.

Nécessite le root + busybox installés sur le téléphone, ainsi que les librairies Qt 4.7 sur le PC, ainsi que les exécutables adb et aapt (voir 1.)

Pour l'installer, soit il est dispo sur vos dépôts (il est sur AUR sous Archlinux), soit récupérer les binaires sur le site officiel : http://qtadb.wordpress.com/ , section Downloads, tout est dispo, Linux, Mac mais aussi Windows.

Récupérer les binaires correspondant à votre système, décompressez l'archive, rendez le programme exécutable (chmod +x) et lancez-le.

QtADB vous permet de faire du transfert / organisation de fichiers, de consulter les infos du téléphone, de faire des screens, ainsi que d'autres choses que je vous laisse découvrir.

Note : Sur ma distribution (Archlinux 64bits), il m'a été impossible d'accéder à la fonction Apps (sauf apps système), ni à la gestion des SMS, qui nécessite l'installation d'un .apk sur le téléphone, mais qui a refusé de fonctionner sur ma distrib.

Quelques screens :

147f09938964c7e49f2e7724267958d34d845d81.png 646a1b2f8c511fc3eee844027495bf57f41c734b.png 18289f401a41b41c994591bc469b92960e24a54b.png

29f9bae0a98acdce13d464b69fd637db3ba6aa8e.png 8923d1eafc3a9d57f9674731a7b8dadf3b166bc5.png 9333501daf898a26ed833ccf619e31dcdd38b554.png

3. Utiliser le protocole MTP

Grace au protocole MTP, il est en théorie très facile de monter et démonter la carte SD interne afin de copier des données vers ou à partir de votre PC. Il s'agit d'une option qui vous permettra d'utiliser Nautilus (ou tout autre explorateur de fichier, comme Dolphin sous KDE) afin de copier des fichiers vers ou à partir de votre Nexus 4. le tuto devrait fonctionner pour tous les systèmes Linux (testé par moi-même sous Archlinux). En outre, cela devrait aussi fonctionner pour Nexus 7 et 10.

1. Activer les options développeur et activer le débogage USB sur le téléphone

2. Installer les modules nécessaire sur votre PC :

Avec Archlinux :

sudo pacman -S libmtp mtpfs

Avec Ubuntu :

sudo apt-get install mtp-tools mtpfs

3. Configurer le 51-android.rules : (remplacer gedit par votre éditeur de texte préféré, perso c'est vim)

sudo gedit /etc/udev/rules.d/51-android.rules

copier ce qui suit à la fin du fichier (si le fichier est vide, copier simplement le texte dedans):

#LG - Nexus 4
SUBSYSTEM=="usb", ATTR{idVendor}=="1004", MODE="0666"
#Samsung - Nexus 7 & 10
SUBSYSTEM=="usb", SYSFS{idVendor}=="18d1", MODE="0666"

Sauvegarder et quitter.

4. Rendez le fichier exécutable :

sudo chmod +x /etc/udev/rules.d/51-android.rules

5. Redémarrer udev (optionnel sous Archlinux, c'est automatique avec systemd) :

sudo service udev restart

6. Creer le point de montage et affecter les permissions (à reproduire aussi pour les Nexus 7 et 10 si vous en avez)

sudo mkdir /media/nexus4
chmod 755 /media/nexus4

7. Brancher le Nexus 4 et s'assurer qu'il est en mode MTP

8. Mounter la partition avec la commande suivante :

sudo mtpfs -o allow_other /media/nexus4

9. Quand vous avez terminé ce que vous vouliez faire, il est obligatoire de démonter la partition :

sudo umount /media/nexus4

Maintenant à chaque fois que vous voudrez copier depuis / vers votre Nexus 4 sur votre PC, vous devrez le brancher puis répéter le 8, puis le 9 une fois fini.

Afin de ne pas avoir à se souvenir des commande de montage / démontage, vous pouvez créer des alias. Ajouter à votre fichier .bashrc (normalement dans votre ~/) :

# Montage Nexus 4
alias nexusM='sudo mtpfs -o allow_other /media/nexus4'
# Demontage Nexus 4
alias nexusD='sudo umount /media/nexus4'

Une fois le Nexus 4 branché, vous n'aurez qu'à taper nexusM pour monter le point de montage, ou nexusD pour le démonter ;)

Source : http://forum.xda-developers.com/showthread.php?t=2004182

Par contre, après tests, cette méthode s'est avérée assez instable sur mon poste, les transferts n'allant pas toujours jusqu'au bout, et j'étais souvent obligé de déconnecter le Nexus pour relancer la connexion.

4. Conclusion

Il s'agit juste d'un retour de ma propre expérience en la matière (perso j'utilise QtADB qui est très bien et stable, après avoir tenté le MTP sans trop de succès), mais si vous avez d'autres méthodes, n'hésitez pas à m'en informer, je les rajouterai ;)

Note : Les partie 1 et 2 fonctionnent très bien également sous Windows / Mac, pour peu que le PC/Mac soit configuré correctement (pilotes, SDK, adb, etc.).

Modifié par Minux
  • Like 2
Lien vers le commentaire
Partager sur d’autres sites

Merci de l'info ! :)

QtADB fonctionne parfaitement avec ma distro ubuntu 12.04 et mon Galaxy Note ou ma Touchpad

Pour plus de visibilité, je propose de déplacer vers une section plus générale. C'est parce que ton tuto est tout neuf que je l'ai débusqué ! :ph34r:

Modifié par baastien
Lien vers le commentaire
Partager sur d’autres sites

  • 3 weeks later...

Et bien je ne vois pas le soucis ?

Et bien explique moi comment tu fais si t'as pas de wifi sur ta machine ...
Lien vers le commentaire
Partager sur d’autres sites

  • 1 month later...

je testerai qtadb ce soir ou ce week end ^^ sur archlinux et KDE (habitué a qt ça devrais me plaire ;) )

Je l'utilise quelque soit l'environnement (sous XFCE par exemple), et ça fonctionne très bien ;)
Lien vers le commentaire
Partager sur d’autres sites

Je l'utilise quelque soit l'environnement (sous XFCE par exemple), et ça fonctionne très bien ;)[/size]

je sais que qt tourne sur tout ^^ juste que kde et qt c'est la duo gagnant ^^

bon et bien sinon il faut que j'étudie comment rooter le nexus 4 car qtadb en a besoin ^^ ...Demain ;) ou ce WE

Lien vers le commentaire
Partager sur d’autres sites

Salut,

en fait, le protocole mtp fonctionne très bien sous linux, mais l'outil mtpfs ainsi que les vieilles méthodes pour accéder à son téléphone sont « peu fiables et buggés » (c'est d'ailleurs celle donnée dans ce tuto).

C'est pas moi qui le dit, c'est un employé de google: http://blog.itsbilal...e-reliable-way/

Hé c'est là qu'arrive go-mtpfs, et c'est juste le paradis. Stable, pratique, convivial... enfin pour ceux comme moi qui aime la ligne de commande et ont toujours un terminal ouvert. Vous pourrez ainsi utiliser les commandes traditionnelles pour manipuler vos fichiers entre votre pc et votre Nexus 4 (parce que adb... mouais bon hein quoi...)

Vous pouvez le compiler vous même, si vous avez le compilateur go d'installé (ou bien alors, compiler le compilateur go pour compiler go-mtpfs... oui, je sais... :) )

Ou bien récupérer les binaires x86/x64 ici: http://hanwen.home.x...tware/go-mtpfs/

Sources du projet: https://github.com/hanwen/go-mtpfs ainsi qu'un tuto pour s'en servir/compiler/... que je ne paraphraserai pas ici.

Korben qui en parle aussi, en français dans le texte: http://korben.info/i...4-0-ubuntu.html

Voilà, à vos terminaux.

Modifié par bobby6killer
Lien vers le commentaire
Partager sur d’autres sites

Super, merci pour l'info, je teste ça et je rajoute les infos au tuto quand j'aurai testé et utilisé cet utilitaire :)

Après un rapide test, je confirme, le MTP n'est pas stable, même avec go-mtpfs (tout du moins sur mon laptop et ma distribution, Archlinux x86_64), j'ai le même genre d'erreur qu'avec mtpfs, c'est inutilisable ...

Après d'autres auront peut-être des retours plus positifs sur go-mtpfs ;)

Et en plus, je préfère QtAdb, qui me permet d'avoir accès à mes fichiers, même si je suis en tether usb, ce qui m'arrive souvent ;)

Lien vers le commentaire
Partager sur d’autres sites

  • 2 weeks later...
  • 6 months later...

Bon, quant à moi, et pour rejoindre cette conversation un peu tard, je confirme que airdroid, c'est juste le pied. Quelle que soit la distribution, il suffit d'un navigateur, et d'y déposer délicatement l'adresse 192.168... et tout est accessible, y comprois les sms... J'ai fouillé sur le net pour avoir quelque chose de compliqué, et finalement...

Lien vers le commentaire
Partager sur d’autres sites

Rejoignez la conversation

Vous pouvez poster maintenant et vous enregistrez plus tard. Si vous avez un compte, connectez-vous maintenant pour poster.

Invité
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...