Come collegare Android 7.1 a Ubuntu Linux con USB?


20

Sto cercando di connettere un telefono Google Pixel, con Android 7.1, a un laptop Ubuntu 16.04 con un cavo USB usando strumenti mtp. Ma mtp non vede il file system del telefono e visualizza il messaggio di errore "Ottieni informazioni di archiviazione non riuscite".

Quindi provando gli strumenti mtp ...

# mtp-detect
libmtp version: 1.1.10

Listing raw device(s)
Device 0 (VID=18d1 and PID=4ee1) is a Google Inc (for LG Electronics/Samsung) Nexus 4/5/7/10 (MTP).
   Found 1 device(s):
   Google Inc (for LG Electronics/Samsung): Nexus 4/5/7/10 (MTP) (18d1:4ee1) @ bus 2, dev 17
Attempting to connect device(s)
Android device detected, assigning default bug flags
Error 1: Get Storage information failed.                 ***** ???
USB low-level info:
   bcdUSB: 512
   bDeviceClass: 0
   bDeviceSubClass: 0
   bDeviceProtocol: 0
   idVendor: 18d1
   idProduct: 4ee1
   IN endpoint maxpacket: 512 bytes
   OUT endpoint maxpacket: 512 bytes
... many lines omitted ...


# mtp-connect
libmtp version: 1.1.10

Device 0 (VID=18d1 and PID=4ee1) is a Google Inc (for LG Electronics/Samsung) Nexus 4/5/7/10 (MTP).
Android device detected, assigning default bug flags
Usage: connect <command1> <command2>
Commands: --delete [filename]
          --sendfile [source] [destination]
          --sendtrack [source] [destination]
          --getfile [source] [destination]
          --newfolder [foldername]


# mtp-filetree
Device 0 (VID=18d1 and PID=4ee1) is a Google Inc (for LG Electronics/Samsung) Nexus 4/5/7/10 (MTP).
Attempting to connect device(s)
Android device detected, assigning default bug flags
Error 1: Get Storage information failed.
Device: (NULL)
LIBMTP_Get_Storage(): Resource temporarily unavailable
OK.

Nel caso sia utile ...

cat /etc/udev/rules.d/51-android.rules
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4ee1", MODE="0666", OWNER="sullivan"

Mille grazie per qualsiasi consiglio!

Risposte:


32

Ecco cosa ho trovato funziona:

  • Innanzitutto, ignora tutti i commenti sul web che hai visto su /etc/udev/rules.d/51-android.rules. Quel file non è necessario.

  • In secondo luogo, salta gli strumenti mtp. Non sono documentati e jmtpfs è comunque molto più semplice.

  • Installa il pacchetto jmtpfs: sudo apt-get install jmtpfs

  • Crea una directory, qualsiasi directory: sudo mkdir /media/myphone
  • Collegare il cavo USB
  • Sblocca il telefono Android.
  • Scorri verso il basso dalla parte superiore dello schermo del telefono
  • Dovresti visualizzare una notifica "USB ..."
  • Tocca quella notifica.
  • Dovresti vedere un menu "Usa USB per ...", seleziona "Trasferisci file".

  • Sul problema del computer linux:

sudo jmtpfs /media/myphone

ls /media/myphone

fusermount -u /media/myphone


2
Grazie. È stato sufficiente trovare quella notifica e scegliere i file di trasferimento. Sembra che non ricordi, però, e dovrò farlo ogni volta. (A proposito, è molto probabile che abbia installato qualcosa come mpt-tools, per una versione precedente di Android, il mio telefono precedente, motivo per cui "ha funzionato")
Darren Cook

Grazie. Ho appena seguito il consiglio di "collegare il telefono" - e c'è stato!
ycc_swe

2
Se aggiungi l'opzione 'allow_other', il mount è disponibile anche per altri utenti oltre a root, usando 'uid' e 'gid' puoi impostare l'utente: gruppo del punto di mount: sudo jmtpfs / media / motox -o uid = 1000, gid = 1000, allow_other
ruleant

1
Grazie. Questo ha funzionato per me. Tuttavia, ho dovuto andare SOLO fino a Unlocking my phonee non appena ho collegato l'USB, la scheda SD del mio telefono è stata montata ed era cliccabile.
Giovedì

1
Può essere montato anche su una directory utente, non è necessario sudo.
Hibou57,

6

Questo funziona per me su un Motorola Moto Z Force Droid con Android 7.1.1:

Sul telefono vai su Impostazioni> Opzioni sviluppatore (attiva se non già acceso)> scorri verso il basso fino a Seleziona configurazione USB> seleziona Picture Transfer Protocol> quindi seleziona nuovamente Media Transfer Protocol. La memoria interna del telefono e la memoria della scheda SD (se presente) vengono quindi montate.

Non ho dovuto installare alcun software sul computer Ubuntu 16.04.3 che utilizzo.


In Android Oreo andando su Impostazioni -> Avanzate -> Opzioni sviluppatore -> Configurazione USB predefinita e selezionando Trasferimento file ha funzionato per me. Ho notato che "Nessun trasferimento di dati" era abilitato per impostazione predefinita.
idoneità

1

La risposta di Sullivan ha funzionato per me, ma solo dopo aver sostituito il cavo che stavo usando. Con il cavo precedente (lungo 2 metri), la connessione era estremamente lenta o disconnessa frequentemente.

Inoltre ho fatto quanto segue, oltre alla risposta di Sullivan:

  • Sono andato nelle opzioni degli sviluppatori nel mio Android 7.0 (Moto G5 Plus) e ho abilitato il debug USB. Senza questo, nessuna connessione è mai stata possibile!

0

Ho una Moto Z2 Force con Android 8.0.0 e mi collego a un PC con Ubuntu 16,04 LTS a 64 bit

Non ho visto "Opzioni sviluppatore" sul mio telefono, ma selezionando Impostazioni> Dispositivi connessi> USB> Trasferisci file, consente la copia dei file della GUI dal mio telefono. NOTA: è necessario che l'USB sia collegato, altrimenti le opzioni USB sono fantasma. Questo non ti consente di caricare file sul telefono, ma di copiarlo da esso ..., ma è cena facile.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.