Як виявити USB-пристрій?


41

У мене вийшов сценарій, коли програмне забезпечення працює лише тоді, коли ви вставляєте USB-пристрій, наданий постачальником програмного забезпечення в операційну систему Windows. Я намагаюся знайти вміст, що зберігається на USB-пристрої. У операційній системі Windows значок USB-пристрою не відображається в My_Computer. Я подумав, що я можу побачити вміст або принаймні виявити USB-пристрій в Ubuntu.

Також в ubuntu диск не виявляється. Я спробував "sudo fdisk -l" знати файлову систему, але її не корисно. Привід взагалі не виявлено.

Мені хотілося знати, як працює програмне забезпечення лише тоді, коли вставлений USB-накопичувач, і не буде, коли він не вставлений. Чи є у них якісь файли, збережені на USB-пристрої? У будь-якому випадку, як ми можемо виявити такий тип пристрою в Ubuntu?

Відповіді:


47

Щоб виявити свій USB-пристрій, у терміналі ви можете спробувати:

  • lsusb , Приклад:

    $ 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
    
  • або це потужний інструмент, lsinput,
    перший встановити його, а потім спробувати його, в ньому перераховані всі пристрої введення , включаючи пристрої USB:

    sudo apt-get install input-utils
    lsinput
    

    приклад:

    $ 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 , за допомогою цього командного рядка потрібно відключити пристрій перед тим, як використовувати команду, а потім підключити його, щоб побачити його:

    $ 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)
    

Але це може не спрацювати. У моєму випадку я намагаюся змусити мій Leapfrog тег працювати на Ubuntu без успіху .


2
Дякуємо за ваш внесок Команди "lsusb" і "udevadm" перераховують мій пристрій, хоча команда "lsinput" не надає мені додаткової інформації.
Учень

4

Якщо пристрій, про який йде мова, є програмним захисним ключем, це може бути пристроєм масового зберігання.

Ймовірним альтернативним пристроєм для його реалізації буде контролер Ethernet; програмне забезпечення може спілкуватися з пристроєм через мережевий адаптер, який не відображатиметься як привід. Або пристрій міг реалізувати послідовний порт, або інший пристрій, для якого драйвери включені в операційну систему.

У будь-якому випадку, це не відповідний форум, щоб задавати питання про обхід захисту від копіювання на програмному забезпеченні Windows, навіть якщо ви намагаєтеся це зробити за допомогою Ubuntu.


Чи є якісь способи перевірити, чи є його програмне забезпечення для перегляду програмного забезпечення або щось інше?
Учень

1
Якщо це пристрій, єдиною метою якого є запобігання запуску програмного забезпечення без його наявності, це захисний ключ для захисту програмного забезпечення.
Адріан

1
Дякую за ваш коментар. Це було цінним внеском для мене. Я визначив, що це ключ захисту програмного забезпечення з вашою допомогою. Я хотів багато чого знати про технологію, яка використовується в ньому, та інші технічні речі. Чи знаєте ви який-небудь форум на зразок "askubuntu" сорту ?. Я також google, щоб знайти приблизно те саме. Але я не переконаний.
Учень

2

Те, що також добре працює, коли обладнання вашого ПК має труднощі з подіями usb, працює за допомогою cronjob.

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

Це вимагає повного сканування підключених USB-пристроїв.
Щохвилини ситуація оновлюється.


0

Якщо ви хочете виявити, як завантажується USB-пристрій - з відмінною деталізацією - ось (2) способи:

udevadm monitor: Це покаже вам завантажуваний USB-пристрій так, як це бачить USB-шина .

udevadmє частиною пакету за замовчуванням udevна 18.04 LTS; не потрібно його встановлювати.

Виконати, udevadm monitor перш ніж вставити USB-пристрій.

Вихід зразка завантажує флешку, показану нижче. Перейдіть до останнього рядка, і ви навіть зможете побачити, який пристрій завантажив як ( sda1 ):

udevadm monitor
monitor will print the received events for:
UDEV - the event which udev sends out after rule processing
KERNEL - the kernel uevent

KERNEL[969.010067] add      /devices/pci0000:00/0000:00:14.0/usb1/1-1 (usb)
KERNEL[969.010367] add      /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0 (usb)
KERNEL[969.018769] add      /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/host0 (scsi)
KERNEL[969.018849] add      /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/host0/scsi_host/host0 (scsi_host)
KERNEL[969.018934] bind     /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0 (usb)
KERNEL[969.019049] bind     /devices/pci0000:00/0000:00:14.0/usb1/1-1 (usb)
UDEV  [969.024995] add      /devices/pci0000:00/0000:00:14.0/usb1/1-1 (usb)
UDEV  [969.031390] add      /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0 (usb)
UDEV  [969.036362] add      /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/host0 (scsi)
UDEV  [969.041258] add      /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/host0/scsi_host/host0 (scsi_host)
UDEV  [969.046202] bind     /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0 (usb)
UDEV  [969.051734] bind     /devices/pci0000:00/0000:00:14.0/usb1/1-1 (usb)
KERNEL[970.051706] add      /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/host0/target0:0:0 (scsi)
KERNEL[970.052068] add      /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/host0/target0:0:0/0:0:0:0 (scsi)
KERNEL[970.052215] add      /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/host0/target0:0:0/0:0:0:0/scsi_disk/0:0:0:0 (scsi_disk)
KERNEL[970.052435] bind     /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/host0/target0:0:0/0:0:0:0 (scsi)
KERNEL[970.052585] add      /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/host0/target0:0:0/0:0:0:0/scsi_device/0:0:0:0 (scsi_device)
KERNEL[970.052774] add      /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/host0/target0:0:0/0:0:0:0/scsi_generic/sg0 (scsi_generic)
KERNEL[970.052963] add      /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/host0/target0:0:0/0:0:0:0/bsg/0:0:0:0 (bsg)
UDEV  [970.060833] add      /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/host0/target0:0:0 (scsi)
KERNEL[970.061634] add      /devices/virtual/bdi/8:0 (bdi)
UDEV  [970.069006] add      /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/host0/target0:0:0/0:0:0:0 (scsi)
UDEV  [970.071467] add      /devices/virtual/bdi/8:0 (bdi)
UDEV  [970.075852] add      /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/host0/target0:0:0/0:0:0:0/scsi_disk/0:0:0:0 (scsi_disk)
KERNEL[970.079839] add      /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/host0/target0:0:0/0:0:0:0/block/sda (block)
KERNEL[970.079989] add      /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/host0/target0:0:0/0:0:0:0/block/sda/sda1 (block)
UDEV  [970.083556] bind     /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/host0/target0:0:0/0:0:0:0 (scsi)
UDEV  [970.091288] add      /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/host0/target0:0:0/0:0:0:0/scsi_device/0:0:0:0 (scsi_device)
UDEV  [970.091755] add      /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/host0/target0:0:0/0:0:0:0/scsi_generic/sg0 (scsi_generic)
UDEV  [970.106807] add      /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/host0/target0:0:0/0:0:0:0/bsg/0:0:0:0 (bsg)
UDEV  [970.339976] add      /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/host0/target0:0:0/0:0:0:0/block/sda (block)
UDEV  [970.519549] add      /devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/host0/target0:0:0/0:0:0:0/block/sda/sda1 (block)

.

dmesg (який друкує буфер кільця ядра) також надасть детальну видимість завантаження вашого USB-пристрою.

Однак, dmesgна відміну від цього, udevadm monitorви показуєте, як завантажується зовнішній USB-пристрій з точки зору ядра

Вихід зразка за dmesgцей час із зовнішнього USB-накопичувача - показано нижче. " 1-2 " позначає його "розташування на шині USB: Перша шина, другий порт. Якби я підключив привід CD до іншого порту, він повідомив би " 1-1 ":

[   55.296482] usb 1-2: new high-speed USB device number 4 using xhci_hcd
[   55.453715] usb 1-2: New USB device found, idVendor=1c6b, idProduct=a222
[   55.453730] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[   55.453740] usb 1-2: Product: Mass Storage Device
[   55.453749] usb 1-2: Manufacturer: USB2.0 External
[   55.453758] usb 1-2: SerialNumber: 2010100500000000174
[   55.525860] usb-storage 1-2:1.0: USB Mass Storage device detected
[   55.527273] scsi host0: usb-storage 1-2:1.0
[   55.530031] usbcore: registered new interface driver usb-storage
[   55.545215] usbcore: registered new interface driver uas
[   56.553073] scsi 0:0:0:0: CD-ROM            slimtype  eTDU108   1     SL46 PQ: 0 ANSI: 0
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.