GNU/Linux >> Belajar Linux >  >> Linux

Kenali lebih banyak perangkat di Linux dengan Repositori ID USB ini

Ada ribuan perangkat USB di pasaran—keyboard, pemindai, printer, mouse, dan banyak lagi lainnya yang semuanya berfungsi di Linux. Detail vendor mereka disimpan di Repositori ID USB.

lsusb

Linux lsusb perintah mencantumkan informasi tentang perangkat USB yang terhubung ke sistem, tetapi terkadang informasinya tidak lengkap. Misalnya, baru-baru ini saya memperhatikan bahwa merek salah satu perangkat USB saya tidak dikenali. perangkat berfungsi, tetapi daftar detail perangkat USB saya yang terhubung tidak memberikan informasi identifikasi. Ini adalah output dari lsusb saya perintah:

$ lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 046d:082c Logitech, Inc.
Bus 001 Device 003: ID 0951:16d2 Kingston Technology
Bus 001 Device 002: ID 18f8:1486  
Bus 001 Device 005: ID 051d:0002 American Power Conversion Uninterruptible Power Supply
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Seperti yang Anda lihat di kolom terakhir, ada satu perangkat tanpa deskripsi pabrikan. Untuk menentukan perangkat apa itu, saya harus melakukan pemeriksaan lebih dalam terhadap pohon perangkat USB saya. Untungnya, lsusb perintah memiliki lebih banyak opsi. Salah satunya adalah -D device , untuk mendapatkan detail per perangkat, seperti yang dijelaskan halaman manual:

"Jangan memindai direktori /dev/bus/usb, sebaliknya hanya menampilkan informasi tentang perangkat yang file perangkatnya diberikan. File perangkat harus seperti /dev/bus/usb/001/001. Opsi ini menampilkan informasi mendetail seperti v pilihan; Anda harus menjadi root untuk melakukan ini."

Saya tidak berpikir itu mudah terlihat bagaimana melewati jalur perangkat ke perintah lsusb, tetapi setelah membaca halaman manual dan output awal dengan hati-hati, saya dapat menentukan bagaimana membangunnya. Perangkat USB berada di sistem file UDEV. Jalur perangkat mereka dimulai di direktori perangkat USB /dev/bus/usb/ . Jalur lainnya terdiri dari ID Bus dan ID Perangkat perangkat. Perangkat non-descript saya adalah Bus 001, Perangkat 002, yang diterjemahkan menjadi 001/002, dan melengkapi jalur /dev/bus/usb/001/002 . Sekarang saya dapat melewati jalur ini ke lsusb . Saya juga akan menyalurkan ke more karena sering ada cukup banyak informasi di sana:

$ lsusb -D /dev/bus/usb/001/002 |more
Device: ID 18f8:1486  
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0         8
  idVendor           0x18f8
  idProduct          0x1486
  bcdDevice            1.00
  iManufacturer           0
  iProduct                1
  iSerial                 0
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           59
    bNumInterfaces          2
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xa0
      (Bus Powered)
      Remote Wakeup
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      1 Boot Interface Subclass
      bInterfaceProtocol      2 Mouse
      iInterface              0
        HID Device Descriptor:

Sayangnya, ini tidak memberikan detail yang saya harapkan. Dua bidang yang muncul di output awal, idVendor dan idProduct , keduanya kosong. Ada beberapa bantuan, karena memindai sedikit mengungkapkan kata Mouse . A-HA! Jadi, perangkat ini adalah mouse saya.

Repositori ID USB

Hal ini membuat saya bertanya-tanya bagaimana cara mengisi kolom ini, tidak hanya untuk diri saya sendiri, tetapi juga untuk pengguna Linux lainnya. Ternyata sudah ada proyek open source untuk ini:Repositori ID USB. Ini adalah repositori publik dari semua ID yang dikenal yang digunakan dalam perangkat USB. Ini juga digunakan dalam berbagai program, termasuk Utilitas USB, untuk menampilkan nama perangkat yang dapat dibaca manusia.

Anda dapat menelusuri repositori untuk perangkat tertentu baik dari situs web atau dengan mengunduh database. Pengguna juga dipersilakan untuk mengirimkan data baru. Inilah yang saya lakukan untuk mouse saya, yang tidak ada.

Perbarui ID USB Anda

Basis data ID USB disimpan dalam file bernama usb.ids . Lokasi ini dapat bervariasi tergantung pada distribusi Linux.

Di Ubuntu 18.04, file ini terletak di /var/lib/usbutils . Untuk mengupdate database, gunakan perintah update-usbids , yang perlu Anda jalankan dengan hak akses root atau dengan sudo :

$ sudo update-usbids

Jika file baru tersedia, itu akan diunduh. File saat ini akan dicadangkan dan diganti dengan yang baru:

$ ls -la
total 1148
drwxr-xr-x  2 root root   4096 Jan 15 00:34 .
drwxr-xr-x 85 root root   4096 Nov  7 08:05 ..
-rw-r--r--  1 root root 614379 Jan  9 15:34 usb.ids
-rw-r--r--  1 root root 551472 Jan 15 00:34 usb.ids.old

Versi terbaru Fedora Linux menyimpan file database di /usr/share/hwdata . Juga, tidak ada skrip pembaruan. Sebaliknya, database dipertahankan dalam sebuah paket bernama hwdata .

# dnf info hwdata

Installed Packages
Name         : hwdata
Version      : 0.332
Release      : 1.fc31
Architecture : noarch
Size         : 7.5 M
Source       : hwdata-0.332-1.fc31.src.rpm
Repository   : @System
From repo    : updates
Summary      : Hardware identification and configuration data
URL          : https://github.com/vcrhonek/hwdata
License      : GPLv2+
Description  : hwdata contains various hardware identification and configuration data,
             : such as the pci.ids and usb.ids databases.

Sekarang daftar perangkat USB saya menunjukkan nama di sebelah perangkat yang sebelumnya tidak disebutkan namanya ini. Bandingkan ini dengan output di atas:

$ lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 046d:082c Logitech, Inc. HD Webcam C615
Bus 001 Device 003: ID 0951:16d2 Kingston Technology
Bus 001 Device 014: ID 18f8:1486 [Maxxter]
Bus 001 Device 005: ID 051d:0002 American Power Conversion Uninterruptible Power Supply
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Lebih banyak sumber daya Linux

  • Lembar contekan perintah Linux
  • Lembar contekan perintah Linux tingkat lanjut
  • Kursus online gratis:Ikhtisar Teknis RHEL
  • Lembar contekan jaringan Linux
  • Lembar contekan SELinux
  • Lembar contekan perintah umum Linux
  • Apa itu container Linux?
  • Artikel Linux terbaru kami

Anda mungkin memperhatikan bahwa deskripsi perangkat lain berubah karena repositori diperbarui secara berkala dengan perangkat baru dan detail tentang perangkat yang sudah ada.

Kirim data baru

Ada dua cara untuk mengirimkan data baru:dengan menggunakan antarmuka web atau dengan mengirim email file patch yang diformat khusus. Sebelum saya mulai, saya membaca pedoman pengiriman. Pertama, saya harus mendaftarkan akun, dan kemudian saya perlu menggunakan sistem pengiriman proyek untuk memberikan ID dan nama mouse saya. Prosesnya sama untuk menambahkan perangkat USB apa pun.

Sudahkah Anda menggunakan Repositori ID USB? Jika demikian, silakan bagikan reaksi Anda di komentar.


Linux
  1. 4 Cara Berguna untuk Mengetahui Nama Perangkat USB yang Dicolokkan di Linux

  2. Cara mengenkripsi partisi dengan DM-Crypt LUKS di Linux

  3. Linux – Bagaimana Cara Menghubungkan Kembali Perangkat Usb yang Terputus Secara Logis?

  1. Membaca aliran input USB di linux

  2. Mengontrol catu daya USB (on/off) dengan Linux

  3. Sistem linux tertanam kami tidak akan mengenali Perangkat USB jika dicolokkan sebelum dinyalakan. Saran?

  1. Matematika menyenangkan dengan kalkulator grafik Linux ini

  2. Simpan beberapa distro Linux di USB dengan alat sumber terbuka ini

  3. Edit video di Linux dengan aplikasi Python ini