Como transfiro arquivos entre o Android e o Linux via USB?

26

Quero copiar alguns arquivos de filme do Linux para o meu telefone Android HTC One SV (não enraizado).

No Windows, meu telefone monta seus volumes interno e do cartão SD automaticamente quando eu o conecto, permitindo a transferência de arquivos.

No Linux Mint 13 Mate, sempre recebo um erro quando conecto meu telefone com um cabo USB; pode demorar alguns minutos para montar e, às vezes, falha. Eu acho que o erro foi—

Erro ao inicializar a câmera: -60: não foi possível bloquear o dispositivo

Como posso fazer isso funcionar?

lamwaiman1988
fonte
Eu diria que o problema está no hardware, não no software, especialmente no Linux ou na sua distribuição.
Bananguin
Meu antigo telefone baseado no Android 2.3 é visto como um dispositivo de armazenamento USB. Qual versão do Android você está usando?
22413 Renan
Para ver o que acontece no seu telefone, você pode tentar usar o ADB. ADB é uma ferramenta com SDK do Android. Você pode ver tudo no seu telefone. E veja LogError.
Ein5t3in
Eu estou usando android 4.1
lamwaiman1988
ativar a depuração USB impedirá que o dispositivo seja bloqueado enquanto conectado. Descobri que o MTP sempre falhava sempre que o dispositivo era bloqueado automaticamente.
cheezsteak 16/09/14

Respostas:

17

ATUALIZAÇÃO: Existem várias alternativas melhores ao Airdroid agora. No entanto, parece que a maioria das distribuições Linux está trabalhando com o MTP razoavelmente bem. Sei que, em minha experiência, o Mint (baseado no Ubuntu) funciona imediatamente, assim como o Manjaro (baseado no Arch). Se não funcionar de maneira nativa ou imediata, procure uma solução MTP no gerenciador de pacotes.


As versões mais recentes do Android montam o armazenamento como um dispositivo MTP em vez do armazenamento em massa. O benefício disso é o acesso simultâneo no dispositivo Android e no PC. Infelizmente, enquanto o Windows o suporta nativamente, as soluções linux são bastante problemáticas a partir de agora.

Atualmente, o mais confiável (e ainda é um pouco esquisito para começar, mas uma vez conectado é bom) que eu encontrei é o go-mtpfs. Aqui está um link para ajudá-lo a configurá-lo. Você precisa montar / desmontar da linha de comando. No entanto, também existe um lançador de unidade nesse segmento, se você estiver no Ubuntu.

A melhor opção, no entanto, a menos que você esteja transferindo muitos dados, é usar algo como o AirDroid. É um aplicativo gratuito na Play Store para transferências na rede local e fornece uma interface da Web para uso com o navegador do seu computador. Ele ainda fornece uma interface de arrastar e soltar arquivos, além de permitir acesso a mensagens sms, logs de chamadas, instalações de aplicativos e muitas outras coisas.

Drake Clarris
fonte
Instalei a versão mais recente do Linux Mint 15 Olivia, conforme a equipe afirmou que se esforçava para a conexão com o Android. Eu tentei a conexão USB está funcionando muito bem. Muito melhor que o Linux Mint 13. Portanto, acho que é apenas um problema do Linux com a transferência MTP e o desempenho varia entre as distribuições.
lamwaiman1988
11
Para maior velocidade, você também pode usar adb pullconforme descrito neste post: vxlabs.com/2014/11/06/...
Stefan van der Walt
28
@ lamwaiman1988 EU NÃO CONFIARIA NO AIRDROID. Permissões do aplicativo Airdroid: 1. Histórico do dispositivo e do aplicativo 2. Identidade 3. Contatos / Calendário 4. Localização 5. SMS 6. Telefone 7. Fotos / Mídia / Arquivos 8. Câmera / Microfone 9. Informações sobre a conexão Wi-Fi 10. Identificação do dispositivo e chamada Informações .... Ao ver essa lista enorme, eu queria descobrir mais sobre a empresa. "Sand Studio" faz parte da "Tongbu Networks", que opera na China . Redes de Xiamen Tongbu - Detalhes: "Redes de Xiamen Tongbu Ltd; C, Sala 3, No.2, Wanghai Road, Parque de Software II, xia men shi, fu jian, 361000, China, +86.05922179187".
a20
Em relação ao exposto, esta análise do PcWorld foi irônica: "Este aplicativo permite que você assuma o controle total do seu dispositivo Android através do navegador da Web do computador".
a20
2
O AirDroid agora está cobrando agora pelo "recurso" local de transferência de arquivos.
sybind
9

Você pode tentar usar o gerenciador de arquivos gratuito do ES File Explorer (gratuito) no seu telefone Android.

Entre muitas funcionalidades, ele possui um servidor FTP. Portanto, se você pode conectar o telefone e o computador em rede, poderá transferir facilmente os arquivos dos dois lados do computador. Eu faço isso o tempo todo nas máquinas Ubuntu e Fedora (via Thunar).

O modo de servidor FTP neste aplicativo é chamado "Gerenciador Remoto", está na seção Ferramentas.

A maioria dos gerenciadores de arquivos modernos aceita a seguinte sintaxe:

ftp://phone_ip_address:port
Usuario
fonte
11
Agora está na seção Rede.
3

Basicamente, isso deve ser tão fácil quanto usar um cartão de memória. Infelizmente, esse não é o caso. Mas, como outras integrações, o Linux alcançará.

Enquanto isso, você pode usar o WiFi e o sshd no Linux e um cliente sftp no lado do smartphone.

Ou use a CLI adb do Linux para usar transferências USB.

Nils
fonte
2

mtpfs - sistema de arquivos FUSE para dispositivos Media Transfer Protocol

apt-get install mtpfs

Feito. Funciona como no Windows no Linux Mint / Ubuntu / etc.

Grizly
fonte
2
sudo apt-get install jmtpfsem Jessie
Erik255
jmptpfstambém está em chiado.
sjas
2

Concordo que não é tão fácil como deveria ser. Por exemplo, o KDE possui uma implementação do MTP, mas ele pode apenas ler imagens, não gravá-las (pelo menos na minha versão).

Achei muito mais fácil fazê-lo pela rede. Existem várias maneiras de fazer isso. Usuario mencionou o ES File Explorer.

Usei este servidor FTP Android de código aberto e gratuito e achei direto. Você especifica um nome de usuário e senha e, em seguida, executa o servidor FTP (é muito claro se o servidor está em execução e é fácil ativar / desativar).

Então, você simplesmente usa qualquer cliente FTP (existem muitos clientes gráficos, por exemplo, eu usei o Konqueror). Consegui escrever os arquivos de volta para o telefone facilmente.

As únicas desvantagens são que provavelmente é um pouco mais lento do que seria com um protocolo USB eficiente e que o FTP não é seguro (tudo está em texto não criptografado). Deve ser possível fazer a mesma coisa, mas com um servidor SFTP do Android; Eu pessoalmente ainda não encontrei um.

Matthew Flaschen
fonte
2

Depois de procurar várias soluções para esse problema, encontrei o Android File Transfer para Linux . Esta é a melhor implementação de MTP para Linux, simplesmente funciona.

Você pode ver que esse problema foi mencionado na lista dos principais problemas do Linux na área de trabalho .

O Linux não possui uma implementação MTP rápida, confiável e sem complicações (montável diretamente pelo kernel; o FUSE não o interrompe). Para trabalhar com seus dispositivos MTP, como ... telefones Android baseados em Linux, é melhor usar ... Windows ou MacOS X. Atualização: um programador russo ficou tão irritado com a libMTP que ele escreveu seu próprio aplicativo completo baseado em Qt, que fala para o kernel Linux diretamente usando libusb. Conheça Android-File-Transfer-Linux.

fclad
fonte
1

Supondo que você esteja usando uma conexão USB, achei que funcionava, mas você precisa fazer as coisas em uma ordem específica:

  • Não conecte o telefone para começar.
  • No telefone, acesse Configurações -> Rede sem fio e rede -> Utilitários USB e clique em "Conectar loja ao PC". O telefone dirá "Conecte o cabo USB para usar o armazenamento em massa".
  • Agora conecte o cabo USB ao telefone. Ele deve mostrar o ícone "android verde" e a mensagem conectada via USB.

(Acho que meu telefone tem uma versão mais antiga do Android, espero que funcione no caso geral).

Cinza
fonte
Ash está certo, obrigado pela dica !, funciona bem. Para transferir arquivos mp3, você deve pressionar (no celular) onde diz conectar-se a usb; Quando você fizer isso, a caixa de ritmo ou outro programa será aberta. Em seguida, basta arrastar os arquivos da caixa de ritmo para onde diz DISPOSITIVO na caixa de ritmo. Os arquivos estarão no seu celular em uma pasta chamada Música. Você pode ver todos os seus arquivos de pasta na área de trabalho pressionando o ícone do seu dispositivo.
User66631
11
Infelizmente, as versões mais recentes do Android não suportam o modo de armazenamento em massa. Apenas mtp (ou ptp em alguns casos). O Linux não suporta mtp muito bem.
Edward Falk
@ Edward: sim, você está certo. Após a "atualização" do Galaxy S2 para o S3, o modo de armazenamento em massa não estava mais disponível. Como Drake diz na resposta aceita, eu achei o MTP mais esquisito que o armazenamento em massa, por isso é um pouco lamentável, mas depois que você o faz funcionar, tudo bem, eu acho. Estou usando o gMTP como um cliente GUI, que funciona bem, mas é bastante lento.
Ash
1

Consegui usar o rsync para recuperar meus arquivos do meu telefone HTC. Os comandos foram:

$ mkdir HTC_Dump
$ cd HTC_Dump
$ rsync -av /run/user/1000/gvfs/mtp\:host\=%5Busb%3A002%2C010%5D/ ./

Resultando em:

enviados 12.947.428.344 bytes recebidos 38.549 bytes 9.738.598,64 bytes / s o tamanho total é 12.944.119.635 a aceleração é de 1,00

Encontrei a localização dos arquivos do telefone olhando no meu /rundiretório.

Isso foi no Xubuntu 17.10, Artful Aardvark, o Android estava em um HTC rodando a versão 7.0 do Android.

jjthomas
fonte
não é necessário rsync ,, o comando copy é suficiente cp -r /run/user/1000/gvfs/mtp\:host\=%5Busb%3A002%2C010%5D/ ~/Destination/Folder. Digo isso no contexto de fazer a única cópia, é claro, se é para atualizar seu PC com as últimas fotos tiradas, então o rsync é o caminho a percorrer.
Exadra37 24/02
1

Eu faço isso via rede FTP criada pelo ES File Explorer.

Antes de tudo, faça seu dispositivo como um ponto de acesso portátil nas configurações → Tethering e ponto de acesso portátil → marque "Ponto de acesso Wi-Fi portátil" e conecte seu PC ao dispositivo com Wi-Fi.

Isso torna sua conexão mais rápida que a conexão via rede WLAN central. Em seguida, execute as seguintes etapas:

  1. Abra o ES File Explorer
  2. Vá para Rede → Gerenciador Remoto
  3. Pressione o botão "Ligar"
  4. No Linux (eu uso o Ubuntu), abra seu gerenciador de arquivos
  5. Clique em "Conectar ao servidor" no lado esquerdo do gerenciador de arquivos
  6. Digite o endereço do seu dispositivo que apareceu no ES File Explorer

( ftp://...:...)

Agora, você pode tratar com o seu dispositivo como uma unidade no seu PC.

Mohsen
fonte
1

Um sdcard normalmente é um sistema de arquivos exfat, que por padrão não é reconhecido pelo Ubuntu por padrão - não sei se esse é o caso de outras distribuições. Para fazer meu Ubuntu 16.04 LTS ser capaz de gravar em um sistema de arquivos exfat, eu fiz:

sudo apt-get install exfat-fuse exfat-utils

Agora posso apenas conectar meu telefone Android no meu desktop Ubuntu com USB e copiar arquivos para o meu sdcard (64GB).

Roel Lie
fonte
0

Tente este comando e reinicie, funcionou para mim.

sudo apt-get install libmtp-common mtp-tools libmtp-dev libmtp-runtime libmtp9
Robby Lebotha
fonte
Essa é a extensão da solução?
Jeff Schaller
É o que funcionou para mim, literalmente executou o comando, foi solicitado a reiniciar e, uma vez que eu logasse novamente, eu poderia ler / gravar arquivos no meu dispositivo Android usando o gerenciador de arquivos dolphin. Não precisei fazer mais nada ou alterar os arquivos de edição.
Robby Lebotha 06/07/19
Im funcionando Xubuntu com o KDE Plasma 5 no meu ux303 Asus
Robby Lebotha
Você deve adicionar essa informação ao texto da sua resposta, que é incompleta e confusa sem ela.
nealmcb
0

Descobri que ele só funciona com USB se eu usar o cabo fornecido com esse dispositivo ou um dispositivo semelhante. O cabo USB do meu tablet Samsung desativado funciona bem com minha substituição do Android Onix. A única coisa que funciona para o meu telefone é o cabo que veio com ele. Outros cabos de carregamento / transferência USB não funcionam ou não totalmente: não copiam arquivos .mp3, por exemplo. Não faço ideia do porquê disso. Mas os cabos que não são dispositivos geralmente não aparecem como um anexo de dispositivo USB.

Não tive que modificar um software ou usar um software especial. Apenas funciona.

MazinOz
fonte
0

No Linux Mint 19.1, é possível transferir facilmente um grande número de fotos ativando as Opções do desenvolvedor e acessando o telefone Android 'Configurações' 'Opções do desenvolvedor', 'Configuração USB'. Em seguida, escolha PTP (Picture Transfer Protocol) em vez de MTP. Agora, as fotos serão transferidas na velocidade da luz usando o gerenciador de arquivos.

user357118
fonte
0

Muitas respostas boas, só quero simplificar tudo:

sudo apt install mtp-tools

Agora conecte seu telefone Android via USB; o cabo é importante; se um não funcionar, tente outro.

mtp-detect

Feito. Abra seu aplicativo ou terminal de arquivo e transfira para longe!

Robert Houghton
fonte
0

Acabei de adquirir um telefone Google Pixel 3 e preciso movê-lo para o Linux Mint 18.2. Aqui está como eu fiz isso:

  1. No meu telefone, instalei o Cx File Explorer
  2. Abri o aplicativo e cliquei na guia "Rede"
  3. Apertei o botão 'Acessar do PC'
  4. Deixei os padrões nas caixas de seleção ('Número da porta aleatória' marcado, 'Mostrar arquivos ocultos' desmarcado) e pressione 'Iniciar serviço'
  5. O Cx File Explorer exibiu uma URL FTP
  6. No meu laptop Linux, abri o gerenciador de arquivos e cliquei na opção 'Arquivo -> Conectar ao servidor ...'
  7. Na caixa de diálogo 'Conectar ao servidor', digitei o URL do FTP da etapa (5) na caixa de texto 'Servidor' e cliquei em 'Conectar'
  8. Agora posso ver os arquivos do meu telefone no meu gerenciador de arquivos do laptop
  9. As fotos e os vídeos que desejo transferir estão localizados em device / DCIM / Camera (e não nas pastas device / Movies ou device / Pictures, como você imagina).
David Bailey
fonte
0

Estou executando o Mint 19.2. Meu telefone é um Pixel de primeira geração executando o Android 10. Depois de procurar uma solução e tentar as opções de MTP sugeridas por muitos sem sucesso, descobri que se você acessar Configurações -> Conectar dispositivos -> USB e alterar "USE USB FOR Transferência de arquivo / Android Auto ", o Nemo monta o armazenamento do telefone e dá acesso aos arquivos do dispositivo. Meu telefone foi definido como "Sem transferência de dados". Agora, se eu tivesse verificado as configurações do USB primeiro, as soluções MTP provavelmente provavelmente funcionaram. Como uma observação lateral, nenhuma das soluções sugeridas no StackExchange, HowToForge ou OMG! mencionado verificando as configurações USB no telefone primeiro. Eu li alguns posts que o MTP no Mint "funciona fora da caixa". Mas, novamente, nenhuma menção de verificar as configurações do seu telefone. Espero que isto ajude.

hackerkatt
fonte
Vários comentários sugerem a instalação do mtp-tools. Não estou dizendo que não é necessário. Acredito que o primeiro passo é garantir que as configurações USB estejam definidas para permitir a transferência de arquivos antes de instalar pacotes adicionais. No meu caso, instalei o libmtp9 (necessário em 19.04 LTS) e o mtp-tools. Eu simplesmente recebi Unable to open raw device 0uma mensagem de erro. Ferramentas mtp não instaladas, configurações USB ativadas e navegador de arquivos viola apareceram com o dispositivo de armazenamento Pixel como qualquer outra unidade.
hackerkatt 22/09
0

Você não precisa instalar nada.

basta seguir da seguinte maneira:

  1. conecte seu cabo USB (?) entre sua máquina linux e seu telefone inteligente. (Cabo USB (?): Você sempre usa ao carregar seu telefone inteligente.)

  2. Em seguida, seu telefone perguntará se você permite o acesso aos dados do dispositivo. Se você escolher Permitir, uma conexão MTP será estabelecida para acessar.

  3. Você pode transferir arquivos entre sua máquina Linux e o seu Android.

Isso é tudo.

Neo
fonte