如何在 Windows 和 Linux 中查找 PCI Vendor/Device ID 并查询设备信息
更新时间
要查一块 PCI 设备的型号和驱动线索,先拿到它的 Vendor ID 和 Device ID,再到 PCI ID 数据库(如 pcilookup.com)查询。Windows 上通过设备管理器的“硬件 Ids”读取,Linux 上用 lspci 命令读取;两个 ID 都是十六进制数字,Vendor ID 标识厂商,Device ID 标识具体型号。这套方法适用于设备缺少驱动、显示为“未知设备”,或你只知道硬件而不知道型号的情况。
Windows:从设备管理器提取 ID
前提:能以管理员或普通用户身份打开设备管理器。目标设备通常带有黄色感叹号,或显示为“Unknown Device”。
- 打开开始菜单,输入“设备管理器”并打开。
- 找到目标设备,右键选择“属性”。
- 切换到“详细信息”选项卡。
- 在属性下拉菜单中选择“硬件 Ids”。
- 记下形如
PCI\VEN_8086&DEV_15B7&SUBSYS_06E01028&REV_31的字符串。
各字段含义如下:
| 字段 | 示例值 | 含义 |
|---|---|---|
| VEN_ | 8086 | 厂商 ID(Vendor ID) |
| DEV_ | 15B7 | 设备 ID(Device ID) |
| SUBSYS_ | 06E01028 | 子系统 ID |
| REV_ | 31 | 硬件修订号 |
注意:pcilookup.com 的说明文字中,示例字符串写的是 DEV_15B7,但解释段落写成了 DEV_1587,属于原文笔误。提取时以你屏幕上实际显示的字符串为准,不要照抄示例。
Linux:用 lspci 查看
在终端执行 lspci -nn,输出中每行末尾的方括号就是 ID,例如:
00:1f.3 Audio device [0403]: Intel Corporation ... [8086:15b7]
方括号内 8086:15b7 的前半段是 Vendor ID,后半段是 Device ID。只想看某个设备时,可用 lspci -nn -s 00:1f.3 缩小范围。Debian 和 Red Hat 的知识库中有更详细的排查步骤,pcilookup.com 页面也链接了这两处文档。
用 ID 查询设备信息
拿到两个 ID 后,打开 pcilookup.com,在首页的 Vendor 框输入厂商 ID(如 8086),在 Device 框输入设备 ID(如 15b7),提交后即可看到对应的厂商与设备描述。子系统 ID 也可以填入 Device 框查询。
查询结果能告诉你这块硬件的厂商和型号名称,这是寻找驱动的起点:知道型号后,再到厂商官网按型号下载驱动,比盲目尝试更可靠。该站点目前以 ID 查询为主,驱动下载链接和社区提交功能尚在规划中,因此查询结果主要用于确认设备身份,而非直接提供驱动文件。
常见卡点
- 设备管理器里找不到“硬件 Ids”:确认选中的是具体设备而非分类节点,并确认已切换到“详细信息”选项卡。
- 字符串里没有 SUBSYS:部分设备不提供子系统 ID,此时只用 VEN 和 DEV 查询即可。
- 查不到结果:先核对 ID 是否抄错位数;较新或较冷门的设备可能尚未收录,可换用其他 PCI ID 数据库交叉查询。
- 多个设备显示相同 ID:同一型号的多个功能单元可能共享 ID,结合设备名称和总线位置区分。