MTP : transfert de fichiers multimédias sur des périphériques
Media Transfer Protocol (MTP) est un protocole de transfert de fichiers destiné au monde du multimédia. Créé récemment (depuis 2004 environ), il s'agit d'un ensemble d'ajouts au Picture Transfer Protocol déjà existant utilisé par les appareils photos numériques. Les ajouts apportés à ce protocole permettent de gérer les spécificités des divers appareils multimédia : baladeurs, appareils de photographie numérique, caméras vidéo, téléphones portables, etc. Il est de plus en plus utilisé par les périphériques mobiles.
Originalement créé par Microsoft®, le protocole MTP est désormais développé par le USB Implementers Forum et est en cours de normalisation.
Sous Ubuntu, le protocole MTP est géré nativement. Ainsi, vos baladeurs sont pris en charge par votre lecteur audio préféré (Banshee, Rhythmbox, Amarok, etc.).
Récemment, MTP est devenu le protocole recommandé par Google pour l'accès aux mémoires des téléphones Android.
Utilisation
À partir d'Ubuntu 14.04 les périphériques mtp "sont" nativement gérés. Il peut cependant y avoir des problèmes de reconnaissance et de droit d'accès aux fichiers.
Certains utilisateurs rapportent que des problèmes subsistent selon l'explorateur de fichier utilisé : par exemple Nautilus permet d'accéder sans problème à un Galaxy S3 alors qu'avec Dolphin c'est impossible (voir la solution plus bas). Il est a noter que ce problème avec Dolphin peut se résoudre en utilisant un port USB 3 (si votre ordinateur en est equipé) au lieu d'un port USB 2. Il faut alors chercher dans le dossier "reseau" (network) pour y trouver les dossiers du smartphone.
Utilisation de jmtpfs (pour périphériques MTP >= Android 4)
Installer le paquet jmtpfs.
Pour garder une cohérence avec le reste de Linux, taper la commande suivante (facultatif) :
sudo ln -s /usr/bin/jmtpfs /sbin/mount.jmtpfs
Taper la commande suivante pour créer le point de montage s'il n'existe pas déjà :
mkdir ~/mtp
Et enfin, taper la commande suivante pour monter le filesystem mtp dans le répertoire choisi précédemment :
jmtpfs ~/mtp
Si le périphérique MTP n'est pas connu par libmtp, alors le message suivant s'affichera :
Device 0 (VID=2931 and PID=0a05) is UNKNOWN. Please report this VID/PID and the device model to the libmtp development team
Il faut alors faire une mise à jour de libmtp via le PPA de libmtp 1).
On peut le faire en tapant la commande suivante :
sudo add-apt-repository -y ppa:fossfreedom/libmtp && sudo apt-get update -q && sudo apt-get upgrade
On peut alors relancer le montage du périphérique MTP :
$ jmtpfs ~/mtp Device 0 (VID=2931 and PID=0a05) is a Jolla Sailfish (ID2).
Démontage du repertoire
Pour démonter le périphérique dans les deux cas ci-dessus :
fusermount -u /media/mtp
Sous Ubuntu 12.04
Le plus simple, faites une mise à niveau de version.
Méthode 1 : Avec un ppa
Pour les appareils Android (4.0 et supérieur) ou tout autre appareil utilisant le protocole MTP, il existe un PPA sur Unity. Pour l'utiliser :
- Ajoutez le PPA ppa:<webupd8team/unstable>2) dans vos sources de logiciels.
Utilisation de mtpfs
Vous pouvez utiliser aussi Mtpfs.
Installez le paquet mtpfs.
Taper la commande suivante pour créer le point de montage si il n'existe pas déjà :
mkdir ~/mtp
puis pour monter un périphérique en tapant la commande suivante :
mtpfs ~/mtp
Méthode 3 : En test, mais semble être la méthode la plus simple et la plus efficace
L’intérêt de GVFS est qu’il s’agit d’une composante de base d’Ubuntu, bien intégrée dans le système. Ainsi, l’appareil mobile est reconnu par le gestionnaire de fichiers, mais aussi les lecteurs de musique Rhythmbox et Banshee pour synchroniser sa médiathèque, et le gestionnaire de photos Shotwell pour synchroniser sa photothèque.
Pour procéder à la mise à jour de GVFS, suivez les instructions suivantes:
Ouvrez un terminal et exécutez les commandes suivantes:
sudo add-apt-repository ppa:langdalepl/gvfs-mtp
sudo apt-get update
Ouvrez ensuite le gestionnaire de mises à jour, puis appliquez l’ensemble des mises à jour proposées;
Enfin, lorsque les mises à jour sont installées, redémarrez votre système.
Merci à ubuntuser.com pour cette méthode.
Méthode 4 : Android (4.0 et supérieur)
Faire l'installation en 1.1.
Personnalisation du launcher
Chercher le launcher en utilisant le mot clé Android, puis conservez-le dans la barre des tâches.
Nous allons le personnaliser comme suit :
Ouvrir le fichier :
gksudo gedit /usr/share/applications/go-mtpfs-unity.desktop
Puis remplacer le contenu par cela :
[Desktop Entry] Name=Branchement de ma tablette Android GenericName=Branchement de ma tablette Android Comment=Mount an Android device filesystem using Go-mtpfs Keywords=Android; mount; unmount; go-mtpfs; mtpfs; nexus; tablette Exec=notify-send --icon=go-mtpfs-android "Go-mtpfs" "Ceci est destiné à être utilisé comme une icône de Unity Launcher - ajouter le à la barre de lancement Unity, puis cliquez droit sur l'icône pour voir les options disponibles" Icon=go-mtpfs-android Type=Application Categories=System; OnlyShowIn=Unity; X-Ayatana-Desktop-Shortcuts=Mount;Unmount; TargetEnvironment=Unity [Mount Shortcut Group] Name=Branche ma Tablette Android Exec=go-mtpfs-unity mount TargetEnvironment=Unity [Unmount Shortcut Group] Name=Débranche ma Tablette Android Exec=go-mtpfs-unity unmount TargetEnvironment=Unity
Enregistrer puis fermer Gedit.
Pour monter : sudo go-mtpfs-unity mount
Seul root a accès à /media/MyAndroid
Pour démonter : sudo go-mtpfs-unity unmount
Fonctionnement
Une fois branchée en USB, la tablette se monte dans le dossier /media/MyAndroid. Apparaît alors un dossier dans Nautilus, sur lequel on peut cliquer et accéder au contenu de la carte SD de la tablette. Le transfert terminé, on peut démonter la tablette et attendre la notification avant de totalement la débrancher du PC.
Méthode 6 : pour les appareils Android (4.0 et supérieur) et un PPA sur gnome-shell
Installation
Même installation que pour unity (méthode 4)
Création de shells pour se connecter et se déconnecter
Tout d'abord, en mode sudo créez le dossier qui accueillera la connexion :
sudo mkdir /media/MyAndroid
Ensuite créez deux shells qui vous permettront de vous connecter et de vous déconnecter.
Connexion :
#!/bin/bash go-mtpfs /media/MyAndroid
Déconnexion :
#!/bin/bash sudo nautilus /media exit
Si vous voulez que ces fonctionnalités soient accessibles par tous les comptes ubuntu, en plus de leur donner les droits à exécution :
chmod +x *-Android
Déplacez-les dans le dossier qui va bien :
sudo mv *-Android /usr/local/bin
Pour une question de simplicité, ajoutez-les dans les menus. Par exemple dans Accessoires, ajoutez un dossier : Clic-droit sur le menu Applications ⇒ Éditer les menus Clic-gauche sur Accessoires (dans la liste à gauche) Nouveau menu ⇒ Android Déplier Accessoires et cliquer sur Android Nouvel élément
=> Nom : Monter Android => Commande : /usr/local/bin/monter-Android Cliquer sur l'icone pour la changer Dans la liste de gauche => icons Dans la liste de droite => Humanity => devices => 48 => music-player.svg => Ouvrir Valider le lanceur
Recommencer avec le démontage : Nouvel élément
=> Nom : Démonter Android => Commande : /usr/local/bin/demonter-Android Cliquer sur l'icone pour la changer Dans la liste de gauche => icons Dans la liste de droite => Humanity => devices => 48 => music-player.svg => Ouvrir Valider le lanceur
Fonctionnement
Connexion :
Lors de l'insertion, Ubuntu vous ouvrira un périphérique nommé Android. Vous y verrez tous les dossiers, mais rien dedans. Fermez-le et connectez-vous avec le shell :
Applications ⇒ Accessoires ⇒ Android ⇒ Monter Android
Vous aurez alors accès à MyAndroid et à tous les dossiers et fichiers du périphérique, et vous pourrez copier, déplacer, … les fichiers que vous voulez traiter.
Déconnexion :
Comme tout périphérique, celui-ci doit être démonté, notamment si une écriture a été effectuée sur le périphérique. Ici, le fonctionnement est curieux. La seule façon est de retirer le périphérique en sudo sous nautilus. D'où le shell vous demandant votre mot de passe, et ouvrant ensuite nautilus dans le dossier /media. Vous pourrez alors démonter MyAndroid en utilisant le panneau latéral gauche et en cliquant sur l'icône d'éjection. Personnellement, je préfère avoir le dossier ouvert dans nautilus en arrière-plan pour voir visuellement la déconnexion (la fenêtre de nautilus se fermant lors de l'éjection).
Problèmes connus
Avec Dolphin
Si Dolphin gère mal votre Android, installez les paquets mtpfs,mtp-tools, puis lancez la commande suivante dans un ici et là pour plus d'informations.
Liens
- (fr) Connecter une tablette ou un téléphone Android 4.0 ou supérieur sous Ubuntu. La page de Korben
Autres contributeurs : René Stoecklin : mise en page.
Page mise à jour le 3 juillet 2016.