Linux提供 lspci
命令以列出PCI总线和设备信息。此命令将提供有关当前连接的PCI设备(如GPU、USB卡等)的简要或详细信息。
为Ubuntu、Debian、Kali、Mint安装
我们可以安装 lspci
使用以下命令 deb
基于数据的分发。
$ sudo apt install pciutils

为Fedora、CentOS、Fedora安装
在 yum
或 dnf
我们可以使用下面的命令来安装名为 pciutils
.
$ sudo yum install pciutils

列出PCI设备
我们将从最简单的形式开始,在这里我们不提供此命令的任何选项。这将打印带有设备类型和供应商信息的PCI地址或插槽信息。
$ lspci

显示指定的插槽或地址设备
大多数计算机 有几个PCI接口。这可能会列出许多会干扰输出的信息。或者我们可能对地址的特定PCI插槽感兴趣。在本例中,我们将打印有关PCI插槽号的信息 00:10.0
它是SCSI设备控制器。
$ lspci -s 00:10.0

印刷机可读格式
默认打印格式为可读格式。这意味着PCI地址或插槽、供应商和产品信息以空格分隔的格式打印。机器可读格式是双引号分隔的 易于解析的格式。
$ lspci -m

详细输出
PCI总线提供了大量关于PCI连接和设备的信息。默认情况下,不会完全打印此信息。我们可以打印详细的信息,这个PCI连接和设备的详细说明 -v
选项如下。
$ lspci -v

我们可以看到每个PCI设备的信息,如子系统、标志、内存位置或地址、正在使用的内核驱动程序、内核模块、I/O端口等。
以标记:值格式打印信息
我们还可以打印PCI插槽和设备信息tag:value 格式。这将使信息像JSON格式一样可读。我们将使用 -vmms
选项如下。
$ lspci -vmm

打印设备供应商代码
每个计算机硬件制造商都有自己的供应商和设备代码或ID。我们可以打印设备供应商、类、svendor、sdevice 身份证 -n
选项如下。
$ lspci -n -vmm

显示PCI设备的内核模块
由于PCI设备本身就有其内核模块和驱动程序供Linux操作系统使用。我们可以列出所有内核和驱动程序 -k
选项如下。
$ lspci -k

我们可以看到以下信息是由 -k
.
- 设备名称
- 子系统
- 内核驱动程序
- 内核模块
相关文章: 如何使用Linux dmesg命令打印系统日志?
以树格式列出PCI设备
到目前为止,我们已经以逐行或常规格式列出了PCI设备。我们还可以列出 lspci
以分层的方式以树形格式。我们将使用 -t
选项如下。
$ lspci -tv

我们可以看到,有些设备列在VMware USB控制器下。
非常详细的模式所有细节
我们已经打印了有关PCI插槽的详细信息。我们将使用多个 -v
选项 -vv
或 -vvv
. 更多 v
意味着更冗长或更详细。
$ lspci -vv