Como detectar um dispositivo USB?

27

Eu tenho um cenário, onde um software funciona apenas quando você insere o dispositivo USB fornecido pelo fornecedor do software no sistema operacional Windows. Estou tentando encontrar o conteúdo armazenado no dispositivo USB. No sistema operacional Windows, o ícone do dispositivo USB não é mostrado em Meu_Computador. Eu pensei, eu posso ver o conteúdo ou pelo menos detectar o dispositivo USB no Ubuntu.

Também no ubuntu, a unidade não é detectada. Eu tentei "sudo fdisk -l" para conhecer o sistema de arquivos, mas não é útil. A unidade não é detectada de todo.

Eu queria saber como o software funciona somente quando o drive USB é inserido e quando não é inserido. Eles possuem algum arquivo armazenado no dispositivo USB? Em qualquer caso, como podemos detectar esse tipo de dispositivo no Ubuntu?

    
por Learner 21.07.2012 / 19:10

3 respostas

31

Para detectar seu dispositivo USB, em um terminal, você pode tentar:

  • lsusb , exemplo:

    $ lsusb
    Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
    Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
    Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
    Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
    Bus 001 Device 002: ID 046d:0809 Logitech, Inc. Webcam Pro 9000
    Bus 003 Device 002: ID 046d:c016 Logitech, Inc. Optical Wheel Mouse
    
  • ou esta ferramenta poderosa, lsinput ,
    Primeiro, instale-o e tente, ele lista todos os dispositivos de entrada, incluindo o seu dispositivo USB:

    sudo apt-get install input-utils
    lsinput
    

    exemplo:

    $ lsinput
    /dev/input/event0
    ...
    
    /dev/input/event1
    ...
    
    /dev/input/event2
    ...
    
    /dev/input/event3
    bustype : BUS_USB
    vendor  : 0x46d
    product : 0xc016
    version : 272
    name    : "Logitech Optical USB Mouse"
    phys    : "usb-0000:00:1d.1-2/input0"
    uniq    : ""
    bits ev : EV_SYN EV_KEY EV_REL EV_MSC
    
  • udevadm , com esta linha de comando, você precisa desconectar o dispositivo antes de usar o comando e conectá-lo para vê-lo:

    $ udevadm monitor --udev
    monitor will print the received events for:
    UDEV - the event which udev sends out after rule processing
    UDEV  [1915.787445] add      /devices/pci0000:00/0000:00:1d.3/usb5/5-2 (usb)
    UDEV  [1915.796226] add      /devices/pci0000:00/0000:00:1d.3/usb5/5-2/5-2:1.0 (usb)
    

Mas pode não funcionar. No meu caso, estou tentando fazer com que o meu Leapfrog Tag seja executado no Ubuntu sem sucesso .

    
por Boris 21.07.2012 / 19:46
4

Se o dispositivo em questão for um dongle de proteção de software, ele pode não ser um dispositivo de armazenamento em massa.

Um provável dispositivo alternativo para ser implementado seria um controlador ethernet; o software pode se comunicar com o dispositivo através do adaptador de rede, que não aparecerá como uma unidade. Ou o dispositivo pode implementar uma porta serial ou outro dispositivo para o qual os drivers estão incluídos no sistema operacional.

Em qualquer caso, este não é um fórum apropriado para perguntar sobre contornar a proteção contra cópia no software Windows, mesmo se você estiver tentando fazer isso usando o Ubuntu.

    
por Adrian 21.07.2012 / 19:15
2

O que também funciona bem quando o hardware do seu PC tem dificuldades com eventos usb está executando um cronjob.

* * * * *    lsusb -v 2>&1 1>/dev/null

Isso força uma varredura completa dos dispositivos USB conectados.
Cada minuto a situação é atualizada.

    
por Kees S. 08.08.2014 / 10:32

Tags