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

3 Answers 3


You're looking in the wrong place.

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

  • 6
    cat: /sys/class/net/wlan0/speed: Invalid argument, how to get the content?
    – schemacs
    Commented Apr 3, 2014 at 15:29
  • 1
    You didn't ask about wireless interfaces. These have no fixed link speed anyway. Commented Apr 3, 2014 at 15:31
  • 1
    Yes, I have also found out that. So what's the unit for this file: sudo cat /sys/class/net/eth0/speed gives 100 while lshw shows capacity: 1Gbit/s size: 100Mbit/s.(I wonder where size comes from. sorry this might be another question).
    – schemacs
    Commented Apr 3, 2014 at 15:34
  • 2
    How could I know the max capacity(not which speed it is now) for this interface?
    – schemacs
    Commented Apr 3, 2014 at 16:26
  • 1
    This may be useful: stackoverflow.com/questions/2872058/…
    – schemacs
    Commented Apr 10, 2014 at 9:18

You can check the interface capacity in following ways.

  1. dmesg | grep eth0

  2. mii-tool -v eth0

  3. ethtool eth0

Note: Change the device name according to yours.


In general, you could find this out using a tool such as strace:

sudo  strace -e trace=file -f -s128  lshw -class network
  • You are so nice to tell me how to trace files opened by programs. Thanks.
    – schemacs
    Commented Apr 3, 2014 at 15:30

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .