PCIe网卡查看工具
今天测试部汇报了一个设备出现问题:” 8个1g电口 +8个1g光口+4个10g bp光口+4个10g非bp光口,其中有4个口没有up起来,ifconfig看不到接口“
拿到这个问题我就在想:“怎样确定是不是只有4个网口没有up?ifconfig只是一个查看内核虚拟设备,那么物理网卡设备呢? 怎样确定这个4个口就是测试人员所说的10g非bp光口?
æÙ---所以为了弄清楚上述问题,需要确认什么信息,使用什么工具作为辅助?----€
物理拓扑:简要情况就是网口插入PCIe板卡
所以首先要确认PCIe板卡是否被识别!
那么有什么工具帮助查看呢?
linux的lspci命令可以帮助查看
执行lspci命令如下:lspci |grep Eth
03:00.0 Ethernet controller: Intel Corporation Device 1521 (rev 01) 03:00.1 Ethernet controller: Intel Corporation Device 1521 (rev 01) 03:00.2 Ethernet controller: Intel Corporation Device 1521 (rev 01) 03:00.3 Ethernet controller: Intel Corporation Device 1521 (rev 01) 04:00.0 Ethernet controller: Intel Corporation Device 1521 (rev 01) 04:00.1 Ethernet controller: Intel Corporation Device 1521 (rev 01) 04:00.2 Ethernet controller: Intel Corporation Device 1521 (rev 01) 04:00.3 Ethernet controller: Intel Corporation Device 1521 (rev 01) 07:00.0 Ethernet controller: Intel Corporation Device 1521 (rev 01) 07:00.1 Ethernet controller: Intel Corporation Device 1521 (rev 01) 07:00.2 Ethernet controller: Intel Corporation Device 1521 (rev 01) 07:00.3 Ethernet controller: Intel Corporation Device 1521 (rev 01) 08:00.0 Ethernet controller: Intel Corporation Device 1521 (rev 01) 08:00.1 Ethernet controller: Intel Corporation Device 1521 (rev 01) 08:00.2 Ethernet controller: Intel Corporation Device 1521 (rev 01) 08:00.3 Ethernet controller: Intel Corporation Device 1521 (rev 01) 0a:00.0 Ethernet controller: Intel Corporation Device 1533 (rev 03) 0b:00.0 Ethernet controller: Intel Corporation Device 1533 (rev 03) 0c:00.0 Ethernet controller: Intel Corporation Device 1572 (rev 02) 0c:00.1 Ethernet controller: Intel Corporation Device 1572 (rev 02) 0c:00.2 Ethernet controller: Intel Corporation Device 1572 (rev 02) 0c:00.3 Ethernet controller: Intel Corporation Device 1572 (rev 02)
可以看到PCIe数目不对,可知为PCIe板卡没有被识别到
这次主要想说的问题是:
0c:00.3 Ethernet controller: Intel Corporation Device 1572 (rev 02)
这些数值是什么意思??
以及lspci还能查看那些信息;除了lspci还有哪些工具可以帮助分析问题
先看lspci帮助:lspci - 列出所有PCI设备
-v
使得 lspci 以冗余模式显示所有设备的详细信息。
-vv
使得 lspci 以过冗余模式显示更详细的信息 (事实上是 PCI 设备能给出的所有东西)。这些数据的确切意义没有在此手册页中解释,如果你想知道更多,请参照 /usr/include/linux/pci.h 或者 PCI 规范。
-n
以数字形式显示 PCI 生产厂商和设备号,而不是在 PCI ID 数据库中查找它们。
-x
以十六进制显示 PCI 配置空间 (configuration space) 的前64个字节映象 (标准头部信息)。此参数对调试驱动和 lspci 本身很有用。
-xxx
以十六进制显示所有 PCI 配置空间的映象。此选项只有 root 可用,并且很多 PCI 设备在你试图读取配置空间的未定义部分时会崩溃 (此操作可能不违反PCI标准,但是它至少非常愚蠢)。
-b
以总线为中心进行查看。显示所有 IRQ 号和内存地址,就象 PCI 总线上的卡看到的一样,而不是内核看到的内容。
-t
以树形方式显示包含所有总线、桥、设备和它们的连接的图表。
-s [[<bus>]:][<slot>][.[<func>]]
仅显示指定总线、插槽上的设备或设备上的功能块信息。设备地址的任何部分都可以忽略,或以“*”代替 (意味着所有值)。所有数字都是十六进制。例如:“0:”指的是在0号总线上的所有设备;“0”指的是在任意总线上0号设备的所有功能块;“0.3”选择 了所有总线上0号设备的第三个功能块;“.4”则是只列出每一设备上的第四个功能块。
-d [<vendor>]:[<device>]
只显示指定生产厂商和设备 ID 的设备。 这两个 ID 都以十六进制表示,可以忽略或者以“*”代替 (意味着所有值)。
-i <file>
使用 <file> 作为 PCI ID 数据库而不是使用默认的 /usr/share/hwdata/pci.ids。
-p <dir>
使用 <dir> 作为包含 PCI 总线信息的目录而不是使用默认的目录 /proc/bus/pci。
-m
以机器可读的方式转储 PCI 设备数据 (支持两种模式:普通和冗余),便于脚本解析。
常用问题&命令:
首先在x86系统中PCIe支持256个Bus,每条Bus支持32个Device,每个Device支持8个Function,所以PCIe设备关键信息组成为:DBDF(Domain,Bus,Deivce,Function)
PCIe的拓扑和Linux的PCIe ID
lspci –vt
所以使用lspci -vt 可以查看PCIe拓扑;根据拓扑就可以看出,接入几个板卡,每个板卡下面接入了多少设备
dmidecode –t slot”命令查看PCIE Slot的信息
dmidecode,读取DMI表中的数据来提取硬件信息,可查看bios,cpu,memory等信息
结合/proc和/sys可以查询硬件使用的驱动信息
总结
以上是生活随笔为你收集整理的PCIe网卡查看工具的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 教你一个电脑上上传图片的好方法电脑如何传
- 下一篇: 电脑中了病毒电脑中了病毒后可能的表现