... Eu tentei pesquisar, mas ele fornece toneladas de "como conectar dispositivos MTP"
Eu só quero saber como obter o nome do dispositivo conectado como (Nexus 10 ou Galaxy S5), que posso ver na lista de dispositivos Nautilus.
... Eu tentei pesquisar, mas ele fornece toneladas de "como conectar dispositivos MTP"
Eu só quero saber como obter o nome do dispositivo conectado como (Nexus 10 ou Galaxy S5), que posso ver na lista de dispositivos Nautilus.
Respostas:
Achei isso surpreendentemente difícil. Eu tenho um Nexus 5 e o KDE (usando libmtp
, acho) o exibe como um Nexus 5. Meu primeiro instinto foi que o KDE estava simplesmente olhando o banco de dados de hardware. Isso mapeia as cadeias de fornecedores e produtos de dispositivos USB para nomes conhecidos. Aqui está o problema:
$ lsusb
Bus 002 Device 011: ID 18d1:4ee1 Google Inc. Nexus 4
Meu Nexus 5 acabou de receber um downgrade! Portanto, o KDE não está conseguindo isso a partir daí.
Podemos usar udevadm
para consultar dispositivos. Nesse caso, precisamos passar uma referência ao dispositivo. Vou usar os números de barramento / dispositivo de cima (eles precisam ser %03d
formatados, então 1 se torna 001, 20 se torna 020 etc.):
$ udevadm info --name=/dev/bus/usb/002/011
...
E: ID_MODEL=Nexus_5
E: ID_MODEL_ENC=Nexus\x205
E: ID_MODEL_FROM_DATABASE=Nexus 4
...
Há muitas outras porcarias lá, mas ID_MODEL
parece ser o que queremos. Se você precisar extrair e processar isso, poderá executá-lo awk
(ou outro) para limpá-lo e substituir o sublinhado:
$ ... | awk -F'=' '/ID_MODEL=/{gsub("_"," ");print $2}'
Nexus 5
Você pode analisar a saída de mtp-detect
.
Primeira instalação mtp-tools
:
sudo apt-get install mtp-tools
E corra:
$ mtp-detect 2>/dev/null | grep Model:
Model: Nexus 7 (2013) Wi-Fi
mtp-detect
mas achei muito lento. Demorou 40 segundos para concluir aqui.