成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

利用這個 USB ID 倉庫識別更多 Linux 上的設備

系統
這是一個包含了所有已知 USB 設備 ID 的開源項目。

這是一個包含了所有已知 USB 設備 ID 的開源項目。

市場上有成千上萬的 USB 設備:鍵盤、掃描儀、打印機、鼠標和其他無數的設備,都能在 Linux 上工作。它們的供應商詳情都存儲在 USB ID 倉庫中。

lsusb
Linux lsusb 命令列出了連接到系統的 USB 設備的信息,但有時信息不完整。例如,我最近注意到我的一個 USB 設備的品牌沒有被識別。設備是可以使用的,但是在列出我所連接的 USB 設備的詳情中沒有提供任何識別信息。以下是我的 lsusb 命令的輸出: 

 

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

正如你在最后一欄中看到的,有一個設備沒有制造商描述。要確定這個設備是什么,我必須對我的 USB 設備樹進行更深入的檢查。幸運的是,lsusb 命令有更多的選項。其中一個選項是 -D device,來獲取每個設備的詳細信息,正如手冊頁面所解釋的那樣:

“不會掃描 /dev/bus/usb 目錄,而只顯示給定設備文件所屬設備的信息。設備文件應該是類似 /dev/bus/usb/001/001 這樣的文件。這個選項會像 v 選項一樣顯示詳細信息,但你必須是 root 用戶才行。"

我認為如何將設備路徑傳遞給 lsusb 命令并不容易,但在仔細閱讀手冊頁和初始輸出后,我能夠確定如何構造它。USB 設備駐留在 UDEV 文件系統中。它們的設備路徑始于 USB 設備目錄 /dev/bus/usb/。路徑的其余部分由設備的總線 ID 和設備 ID 組成。我的無描述設備是 Bus 001 Device 002,被翻譯成了 001/002,完成的路徑為 /dev/bus/usb/001/002。現在我可以把這個路徑傳給 lsusb。我還會用管道傳給 more,因為這里往往有很多信息:

 

  1. $ lsusb -D /dev/bus/usb/001/002 |more 
  2. Device: ID 18f8:1486   
  3. Device Descriptor: 
  4.   bLength                18 
  5.   bDescriptorType         1 
  6.   bcdUSB               1.10 
  7.   bDeviceClass            0 (Defined at Interface level
  8.   bDeviceSubClass         0 
  9.   bDeviceProtocol         0 
  10.   bMaxPacketSize0         8 
  11.   idVendor           0x18f8 
  12.   idProduct          0x1486 
  13.   bcdDevice            1.00 
  14.   iManufacturer           0 
  15.   iProduct                1 
  16.   iSerial                 0 
  17.   bNumConfigurations      1 
  18.   Configuration Descriptor: 
  19.     bLength                 9 
  20.     bDescriptorType         2 
  21.     wTotalLength           59 
  22.     bNumInterfaces          2 
  23.     bConfigurationValue     1 
  24.     iConfiguration          0 
  25.     bmAttributes         0xa0 
  26.       (Bus Powered) 
  27.       Remote Wakeup 
  28.     MaxPower              100mA 
  29.     Interface Descriptor: 
  30.       bLength                 9 
  31.       bDescriptorType         4 
  32.       bInterfaceNumber        0 
  33.       bAlternateSetting       0 
  34.       bNumEndpoints           1 
  35.       bInterfaceClass         3 Human Interface Device 
  36.       bInterfaceSubClass      1 Boot Interface Subclass 
  37.       bInterfaceProtocol      2 Mouse 
  38.       iInterface              0 
  39.         HID Device Descriptor: 

不幸的是,這里并沒有提供我希望找到的細節。初始輸出中出現的兩個字段 idVendor 和 idProduct 都是空的。這有些幫助,因為往下看一下,就會發現 Mouse 這個詞。所以,這個設備就是我的鼠標。

USB ID 倉庫
這讓我不禁想知道如何才能填充這些字段,不僅是為了自己,也是為了其他 Linux 用戶。原來已經有了一個開源項目:USB ID 倉庫。它是一個公共倉庫,它包含了 USB 設備中使用的所有已知 ID。它也被用于各種程序中,包括 USB Utilities,用于顯示人類可讀的設備名稱。

 

你可以從網站上或通過下載數據庫來瀏覽特定設備的倉庫。也歡迎用戶提交新的數據。我要為我的鼠標提交數據,因為它沒有在里面。

更新你的 USB ID
USB ID 數據庫存儲在一個名為 usb.ids 的文件中。這個文件的位置可能會因 Linux 發行版的不同而不同。

在 Ubuntu 18.04 中,這個文件位于 /var/lib/usbutils。要更新數據庫,使用命令 update-usbids,你需要用 root 權限或 sudo 來運行。

 

  1. $ sudo update-usbids 

如果有新文件,它就會被下載。當前的文件將被備份,并被替換為新文件:

 

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

最新版本的 Fedora Linux 將數據庫文件保存在 /usr/share/hwdata 中。而且,沒有更新腳本。而是,數據庫由一個名為 hwdata 的軟件包維護。

 

  1. # dnf info hwdata 
  2. Installed Packages 
  3. Name         : hwdata 
  4. Version      : 0.332 
  5. Release      : 1.fc31 
  6. Architecture : noarch 
  7. Size         : 7.5 M 
  8. Source       : hwdata-0.332-1.fc31.src.rpm 
  9. Repository   : @System 
  10. From repo    : updates 
  11. Summary      : Hardware identification and configuration data 
  12. URL          : https://github.com/vcrhonek/hwdata 
  13. License      : GPLv2+ 
  14. Description  : hwdata contains various hardware identification and configuration data, 
  15.              : such as the pci.ids and usb.ids databases. 

現在我的 USB 設備列表在這個之前未命名的設備旁邊顯示了一個名字。比較一下上面的輸出:

 

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

你可能會注意到,隨著倉庫定期更新新設備和現有設備的詳細信息,其他設備的描述也會發生變化。

提交新數據
提交新數據有兩種方式:使用網站或通過電子郵件發送特殊格式的補丁文件。在開始之前,我閱讀了提交指南。首先,我必須注冊一個賬戶,然后我需要使用項目的提交系統提供我鼠標的 ID 和名稱。添加任何 USB 設備的過程都是一樣的。

 

責任編輯:姜華 來源: Linux中國
相關推薦

2017-12-12 09:38:46

LinuxUSB存儲數據泄露

2025-04-11 08:35:00

漏洞網絡安全終端安全

2017-05-12 10:59:19

Windows 10USB設備

2020-10-30 12:44:05

USBLinux

2016-12-01 18:39:58

Linux識別USB設備

2014-01-09 14:13:27

2018-08-08 16:15:00

WindowsWindows 10USB

2011-01-18 11:52:25

Linux語音識別

2018-01-30 12:18:08

Linux儲存器USB設備

2022-08-30 10:33:08

LinuxUSB系統

2020-10-13 10:29:31

面部識別設備惡意攻擊漏洞

2019-03-06 09:45:03

Windows 10USB錯誤命令

2010-02-25 17:36:38

Linux USB

2011-11-23 13:45:35

最強悍網絡設備H3C

2019-04-25 13:30:14

Linux文件分身

2022-09-28 12:57:13

USBLinux系統

2018-02-23 10:30:15

Linux命令網絡連接

2022-03-18 08:59:45

TestFlight蘋果漏洞

2013-10-30 11:27:25

Linux基礎網絡設備

2010-08-03 13:56:57

路由器連接
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久精品小视频 | 超碰人人艹 | 亚洲午夜小视频 | 日韩中文字幕一区 | 欧美激情亚洲天堂 | 粉嫩一区二区三区四区公司1 | 99精品一区二区 | 国产日韩欧美中文字幕 | 精品国产不卡一区二区三区 | xx视频在线 | 欧美乱操 | 欧美一区成人 | 欧美在线一级 | 日韩在线不卡视频 | 欧美一级在线观看 | 久久青青 | 久久99这里只有精品 | 亚洲欧美中文日韩在线v日本 | 国产在线精品一区二区 | 久久久久久综合 | 久久精品亚洲一区二区三区浴池 | 999观看免费高清www | 亚洲一区视频 | 久久色视频 | 亚洲精品一区二区在线观看 | 青青草国产在线观看 | 精品久久久久久久久久久久久久 | 亚洲精品一区二区三区蜜桃久 | 日韩欧美久久 | 国产欧美日韩在线播放 | 精品国产乱码久久久久久蜜臀 | 欧美在线观看免费观看视频 | 精品国产不卡一区二区三区 | 成人国产在线视频 | 久久精品中文字幕 | 久在线| 亚洲成人精品久久 | 国产精品久久久乱弄 | 久久久精品一区二区三区 | 国产精品一区二区久久精品爱微奶 | 美女张开腿露出尿口 |