我可以通过 lshw 获取网络接口的容量,但是该信息存储在 sysfs 中的哪个文件中(即 /sys/class/net/eth0/device/ 目录中的哪个文件)?
$ sudo lshw -class network
*-network
description: Ethernet interface
product: 82579LM Gigabit Network Connection
vendor: Intel Corporation
physical id: 19
bus info: pci@0000:00:19.0
logical name: eth0
version: 04
serial: 3c:97:0e:b4:5c:6a
capacity: 1Gbit/s
width: 32 bits
clock: 33MHz
capabilities: pm msi bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
configuration: autonegotiation=on broadcast=yes driver=e1000e driverversion=2.3.2-k firmware=0.13-3 latency=0 link=no multicast=yes port=twisted pair
resources: irq:43 memory:f2500000-f251ffff memory:f253b000-f253bfff ioport:6080(size=32)
$ ls /sys/class/net/eth0/device/
broken_parity_status d3cold_allowed enable local_cpus net remove resource0 subsystem_device
class device firmware_node modalias numa_node rescan resource1 subsystem_vendor
config dma_mask_bits irq msi_bus power reset resource2 uevent
consistent_dma_mask_bits driver local_cpulist msi_irqs ptp resource subsystem vendor
答案1
您找错地方了。
看着/sys/class/net/<device>/speed
。
答案2
您可以通过以下方式检查接口容量。
dmesg | grep eth0
mii-tool -v eth0
ethtool eth0
笔记:根据您的需要更改设备名称。
答案3
一般来说,你可以使用 strace 之类的工具来找到答案:
sudo strace -e trace=file -f -s128 lshw -class network