使用lspci命令查看PCI总线连接设备信息

有时候,基于一些开发或者其他的需求,需要在运行Linux系统的服务器、个人PC或者笔记本上查看该系统的一些硬件信息时,而Linux系统有多少是只安装了命令行界面,没有图形界面的时候,该怎么查看呢?其实办法有很多,这里来介绍其中的一个lspci的命令,这个命令可以列出连接到PCI总线上面的设备。

lspci 命令对设备的访问可能有权限受限的问题,普通用户使用这个命令的时候,可能会出现显示的信息不全的情况,建议提权使用或者直接用root用户来使用。

先来看看lspci的帮助信息

帮助信息 从上面的信息可以看出,可选参数其实挺多的,分为基础输出模式、输出选项、设备ID输出、设备搜索等等好几个分类。通过这些参数的组合,这个命令可以满足基本的查看硬件信息的需求。

接下来我们来看看并分析命令不加参数的情况下的输出结果。

输出结果

这是一台做了Linux mint发行版的PC,可以看到输出的结果,这就是一台普通的PC的硬件,里面包含了硬件设备的详细信息,如Ethernet controller,也就是以太网控制器(网卡),厂商是Realtek,型号是RTL8111/8168/8411。VGA compatible controller,也就是显卡,厂商是NVIDIA英伟达,型号是GeForce GTX 750 Ti。还有Xeon的CPU等等信息都可以查询得到。

00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v3 Processor DRAM Controller (rev 06)
00:01.0 PCI bridge: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor PCI Express x16 Controller (rev 06)
00:14.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB xHCI (rev 05)
00:16.0 Communication controller: Intel Corporation 8 Series/C220 Series Chipset Family MEI Controller #1 (rev 04)
00:1a.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #2 (rev 05)
00:1b.0 Audio device: Intel Corporation 8 Series/C220 Series Chipset High Definition Audio Controller (rev 05)
00:1c.0 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #1 (rev d5)
00:1c.1 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #2 (rev d5)
00:1c.2 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #3 (rev d5)
00:1d.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #1 (rev 05)
00:1f.0 ISA bridge: Intel Corporation B85 Express LPC Controller (rev 05)
00:1f.2 SATA controller: Intel Corporation 8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode] (rev 05)
00:1f.3 SMBus: Intel Corporation 8 Series/C220 Series Chipset Family SMBus Controller (rev 05)
01:00.0 VGA compatible controller: NVIDIA Corporation GM107 [GeForce GTX 750 Ti] (rev a2)
01:00.1 Audio device: NVIDIA Corporation GM107 High Definition Audio Controller [GeForce 940MX] (rev a1)
03:00.0 Non-Volatile memory controller: Silicon Motion, Inc. SM2263EN/SM2263XT SSD Controller (rev 03)
04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 11)

如果想查看包括设备的子系统和内存地址、IRQ中断请求等更为详细的信息,可以使用-v、-vv或者 -vvv参数进行查询。输出的信息会很长且很详细。请自行尝试,这里就不截图了。

因为上面说到,输出的结果会很长,阅读和查找起来会比较麻烦。可以配合grep一起使用

sudo lspci -v|grep VGA

查询VGA设备

sudo lspci -vv|grep Ethernet

查询网卡设备

lspci命令有两种检查跟新PCI设备ID数据库的方法,一种是通过-Q在线查询更新,另一种是update-pciids更新本地数据库

-Q在线查询更新

在线同步

update-pciids本地更新

本地同步