How to find out capacity for network interfaces?

schemacs asked:

I could get the capacity for the network interface by lshw, but which file in sysfs is this information stored(i.e. which file in /sys/class/net/eth0/device/ directory)?

$ sudo lshw -class 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

My answer:

You’re looking in the wrong place.

Look at /sys/class/net/<device>/speed.

View the full question and answer on Server Fault.

Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.