Ótimo, você é um Linuxer e tem um Windows Phone. Parabéns. :)
De qualquer forma ... antes de chegarmos ao ponto, aqui estão algumas informações básicas sobre USB: Quando você cria uma conexão USB, o hardware primeiro “negocia” a relação entre o dispositivo (seu telefone) e o host (seu laptop).
O USB define várias classes de dispositivos . O kernel do Linux envia módulos para suportar muitos deles. Dispositivos Android, por exemplo, geralmente têm a capacidade de se anunciar como dispositivos de armazenamento em massa e podem ser montados da mesma maneira que um drive USB.
No entanto, o módulo que suporta a classe USB tem que ser carregado (o que é feito automaticamente no * Ubuntu), e espera-se que o dispositivo se comporte de acordo com a especificação - o que muitos dispositivos não fazem.
Agora, para responder à sua pergunta: Você deve começar a depurar procurando o que acontece depois de anexar o dispositivo à máquina host. Para fazer isso, abra um console e digite
sudo tail -f /var/log/kern.log
Em seguida, conecte seu telefone. Você deve ver algo como a seguinte saída:
Jul 28 22:45:17 tp kernel: [810865.949958] usb 1-1: new high-speed USB device number 22 using xhci_hcd
Jul 28 22:45:17 tp kernel: [810866.079025] usb 1-1: New USB device found, idVendor=04e8, idProduct=6860
Jul 28 22:45:17 tp kernel: [810866.079028] usb 1-1: New USB device strings: Mfr=2, Product=3, SerialNumber=4
Jul 28 22:45:17 tp kernel: [810866.079030] usb 1-1: Product: Android
Jul 28 22:45:17 tp kernel: [810866.079031] usb 1-1: Manufacturer: Samsung
Jul 28 22:45:17 tp kernel: [810866.079032] usb 1-1: SerialNumber: XXXXXXXXXXXXXXXX
Agora, verifique os detalhes do dispositivo USB com lsusb
.
lsusb -vd vendor:product | grep -i class
Os espaços reservados vendor
e product
devem ser preenchidos com os códigos hexadecimais de quatro dígitos da saída /var/log/kern.log
acima.
Este comando fornecerá uma lista de "subinterfaces" USB que o seu telefone expõe ao seu laptop, por exemplo:
# sudo lsusb -vd 04e8:6860 | grep -i class
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bInterfaceClass 6 Imaging
bInterfaceSubClass 1 Still Image Capture
bInterfaceClass 6 Imaging
bInterfaceSubClass 1 Still Image Capture
bFunctionClass 2 Communications
bFunctionSubClass 2 Abstract (modem)
bInterfaceClass 2 Communications
bInterfaceSubClass 2 Abstract (modem)
bInterfaceClass 10 CDC Data
bInterfaceSubClass 0 Unused
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
Isso é um monte de rabiscos (e ainda mais se você ler toda a saída em vez de grep
ing para as classes USB), mas isso mostra que o dispositivo implementa a classe 06
- que normalmente significa que o telefone poderá transferir imagens através do protocolo PTP / MTP . *
Outros dispositivos mostrarão uma classe 08
, caso em que você deverá ver um nó de dispositivo como /dev/sdxX
que você pode montar. (Verifique os detalhes do nó com file -s /dev/sdxX
antes de montar.)
Para encurtar a história, embora você provavelmente não receba suporte de armazenamento em massa com um dispositivo Windows, você tem uma boa chance de que seu telefone ofereça suporte a MTP, especialmente porque o MTP é um filho da Microsoft.
Há um conjunto de aplicativos para o Ubuntu que entende o MTP, por isso talvez seja necessário instalar um deles e tente acessar o armazenamento do seu telefone. Eu pessoalmente gosto muito do gerenciador de arquivos do Konqueror e fiz uma experiência impecável com sua integração MTP.
* Para ser sincero, não tenho 100% de certeza de que isso seja factualmente correto. Fique à vontade para me corrigir, qualquer pessoa.