Eu tenho um telefone Android que se conecta ao meu computador via MTP. Isso funciona bem; Eu posso ver e transferir arquivos com o Nautilus. No entanto, geralmente quero usar o terminal para mover um grande número de arquivos e não consigo encontrar o dispositivo em nenhum lugar da árvore do sistema de arquivos. O Nautilus relata o local como mtp://[usb:003,007]/
, mas não está abaixo /media
ou /mnt
.
Alguém sabe onde fica?
mtp
mountpoint
bessman
fonte
fonte
Respostas:
Como você já descobriu , os pontos de montagem estão em
/run/user/$USER/gvfs/
(ou/var/run/user/$UID/gvfs
) e recebem o nome do protocolo, tipo de conexão e endereço que usam. O que dificulta as coisas, porque o endereço de conexão pode mudar sempre que você reconectar o dispositivo, mesmo que seja a mesma porta. Se você tiver o mesmo dispositivo duas vezes, fica ainda pior.Você pode usar
lsusb
para exibir todos os dispositivos USB conectados no terminal:Como você notou, o Nautilus também fornece essas informações por meio da dica de ferramenta. Você encontrará a forma codificada, por exemplo,
mtp://[usb:002,025]
em/run/user/$USER/gvfs
(ou/var/run/user/$UID/gvfs
) comomtp:host=%5Busb%3A002%2C025%5D
Edição do Asker: Isso parece exigir uma versão mais recente do libmtp e / ou gvfs que está disponível por padrão no 13.04. Execute
sudo add-apt-repository ppa:langdalepl/gvfs-mtp
e atualize antes de fazer qualquer outra coisa.Edit: O PPA não é mais necessário no saucy / 13.10 e, mais recentemente, os nomes de arquivos são listados no terminal, assim como no Nautilus.
Editar 11-01-2016: removi o script que foi incluído anteriormente nesta resposta devido à falta de tempo para manutenção e aprimoramentos. Você ainda pode encontrá-lo no histórico de revisões.
fonte
/DCIM/Camera/
existe no meu telefone, mas no terminal é chamado/2404/2407/
. Esse é o problema. Se eucd
entrar/2404/2407/
e corrernautilus .
,/DCIM/Camera/
é aberto. O telefone está desbloqueado, caso contrário, eu não conseguiria acessá-lo via Nautilus, certo?gvfs-fuse
pacote instalado. Nem todas as versões / sabores do Ubuntu o possuem por padrão (por exemplo, o Ubuntu MATE 14.10 não). Sem ele, o dispositivo MTP não será montado como um caminho local e somente poderá ser usado por aplicativos que suportam URIs gvfs.gvfs/
diretório eventualmente. No entanto, em vez de $ USER, o caminho neste PC é:/run/user/1000/gvfs/mtp:host=%5Busb%3A003%2C003%5D
- Para outros, sugiro que você dê uma olhada, se não o encontrar imediatamente.A memória do meu dispositivo Nexus pode ser acessada em:
Portanto, se seu $ UID for
1000
, você poderá encontrá-lo fazendoou (para o local exato em um exemplo, supondo que seu UID seja 1000),
fonte
mtp*
nome do arquivo pode ser renomeado para uso em aplicativos Wine? Naivemv
me dámv: cannot move 'mtp:host=%5Busb%3A001%2C065%5D' to 'mtp': No such file or directory
(note que o nome do arquivo é tab-concluída)/run/user/1000/gvfs
pasta do telefone está vazia.MTP
O dispositivo montado geralmente pode ser encontrado em:/run/user/1000/gvfs/
por exemplo, se a barra de endereço do Nautilus aparecer
mtp://[usb:001,006]/
, você poderá acessar por:agora no terminal você pode copiar arquivos ou pastas:
cd /run/user/1000/gvfs/mtp\:host=%5Busb%3A001%2C006%5D/
cp -r ~/videos/ .
fonte
Digite
mount
. Isso listará todos os sistemas de arquivos ativos.fonte
lsof -c nautilus | less
para listar todos os arquivos que o Nautilus abriu.Isso está trabalhando com:
tente isto:
apt-get install mtpfs
apt-get install mtp-tools
#
sim poderia ser uma linha (isso é opcional )sudo mkdir -p /media/mtp/phone
sudo chmod 775 /media/mtp/phone
#
Pessoalmente, restringiria as permissões ao NO-eXecute#
Neste ponto, não tenho certeza do que é suficiente para montar.sudo mtpfs -o allow_other /media/mtp/phone
ls -lt /media/mtp/phone
resultado:
ls -lt /media/mtp/phone/Card
resultado:
Listando o acesso ao cartão SD no meu telefone Android. " Playlists " é um diretório virtual chamado "/ Playlists" que contém suas playlists como arquivos .m3u. (por
man mtpfs
)Isso parece fazer o truque. Comandos úteis para lembrar ...
sudo mtpfs -h
... lista as opções do dispositivo. Isso parece funcionar apenas antes de você montar o dispositivo. Portanto, verifique primeiro, talvez.mtp-detect
... mostra muitas coisas sobre o dispositivo (parte do mtp-tools).Também acho que você precisa do telefone / dispositivo " ligado ", abra o protetor de tela, se tiver um, para que o dispositivo possa se conectar.
Notei que meu USB-s é montado como:
Portanto, pode fazer mais sentido montar sob o seu nome de usuário em vez do stub "mtp". Leia também o post: " Montando o seu cartão SD do Android MTP no Ubuntu ", tem algumas sugestões e extras úteis.
referências:
Assumi minha liderança nesses dois posts:
fonte
Eu tenho um telefone LG2 e estou executando o Xubuntu 15.10.
Foi assim que montei o dispositivo no diretório mnt no meu usuário.
Primeiro, verifique se você tem os seguintes pacotes instalados no seu sistema.
Conecte seu telefone como dispositivo MTP e digite o seguinte comando no seu terminal.
Descomentar
user_allow_other
no arquivo/etc/fuse.conf
.Crie um diretório
mnt
no seu diretório pessoal.Monte o dispositivo.
É isso aí. Agora seu dispositivo está montado no
mnt
diretório criado na etapa 4 .Nota: Pode haver algumas etapas desnecessárias. Mas seguir os passos acima funcionou para mim.
Referência: https://wiki.archlinux.org/index.php/MTP
fonte
Esta não é uma resposta direta ao problema, mas uma solução, no entanto.
Depois de experimentar inconsistências com a conectividade USB, ignorei todos os sistemas .gvfs e USB.
Eu instalei um servidor ftp simples no android e pronto! Conecte-se ao servidor (ftp com login ou sem, dependendo de sua escolha) no Nautilus / nemo / thunar e pronto.
A sincronização de pastas é realizada através do OwnCloud e / ou BitTorrentSync.
E o FTP pela rede sem fio é muito mais rápido que a conexão USB.
fonte
MTP é um protocolo, bem como FTP ou SSH. Ele busca arquivos quando o usuário solicita. Portanto, não há sistema de arquivos montado no computador.
Use mtpfs para fazer com que pareça um sistema de arquivos montado.
Não há necessidade de especificar o dispositivo. Se você tiver apenas um dispositivo conectado, não haverá ambiguidade. Não testei com vários dispositivos conectados ao meu computador.
fonte
Eu não sei exatamente para atravessar para o local MTP via terminal. No entanto, descobri que podemos clicar com o botão direito do mouse no armazenamento interno / cartão SD e escolher a opção "Abrir no terminal". Fazendo isso, o local é aberto diretamente no Terminal.
fonte
Eu sou capaz de gerenciar arquivos em um dispositivo MTP conectado Android usando
gvfs-*
comandos (por exemplogvfs-cp
,gvfs-move
...) que também são mencionados no seguinte artigo da Wikipedia : gvfs .Eu escrevi um utilitário CLI simples para sincronização de arquivos de / para um dispositivo Android: https://github.com/DusanMadar/PySyncDroid
fonte