Утилита lshw

lshw — это консольная утилита для Linux, предназначенная для детального отображения информации об аппаратном обеспечении системы.

Введение

Утилита lshw (Hardware Lister) умеет показывать данные о процессоре, памяти, материнке, дисках, сетевых интерфейсах и других компонентах сервера.

Эта утилита выводит довольно подробные данные, включая производителя, модель, версии прошивок, серийные номера и подобные сведенья. Умеет выводить информацию в разных форматах (TXT, XML, JSON, XTML).

Для своего запуска lshw требует права root.

В отличии от утилиты dmidecode — эта утилита анализирует данные из ядра Linux, файловых систем /proc и /sys, а также взаимодействует с драйверами устройств. Можно комбинировать обе эти утилиты для большей информативности, так как о чём-то лучше расскажет dmidecode, а о чём-то lshw.

Выполнение lshw без дополнительных опций покажет информацию обо всех обнаруженных устройствах. Но можно ограничить вывод по определённому типу устройства с помощью опции -class.

  • -class network — информация о сетевых интерфейсах;
  • -class processor — информация о процессоре;
  • -class storage — информация о sata интерфейсах;
  • -class disk — информация о дисках;
  • -class volume — информация о разделах;
  • -class memory — информация о планках памяти;
  • -class system — информация о материнской плате;
  • -class bus — информация о шинах, например usb;
  • -class bridge — информация о pci мостах;
  • -class display — информация о дисплеях.

А для выбора формата вы можете использовать опции:

  • -xtml — для вывода в формате xtml;
  • -xml — для вывода в формате xml;
  • -json — для вывода в формате json.

Примеры

Например, получим информацию о памяти.

  • В отличии от dmidecode мы не видим максимально-доступное количество памяти;
  • Но видим что установлено 128GiB памяти (4 планки по 32GB, DDR4, 2133 MT/s, Kingston);
  • Также видим cache процессора.
# lshw -class memory
  *-firmware
       description: BIOS
       vendor: American Megatrends Inc.
       physical id: 0
       version: 2.0a
       date: 06/24/2016
       size: 64KiB
       capacity: 16MiB
       capabilities: pci upgrade shadowing cdboot bootselect socketedrom edd int13floppy1200 int13floppy720 int13floppy2880 int5printscreen int9keyboard int14serial int17printer acpi usb biosbootspecification uefi
  *-memory
       description: System Memory
       physical id: 18
       slot: System board or motherboard
       size: 128GiB
       capabilities: ecc
       configuration: errordetection=multi-bit-ecc
     *-bank:0
          description: DIMM DDR4 Synchronous 2133 MHz (0.5 ns)
          product: 9965640-007.C00G
          vendor: Kingston
          physical id: 0
          serial: 7E263C92
          slot: DIMMA1
          size: 32GiB
          width: 64 bits
          clock: 2133MHz (0.5ns)
     *-bank:1
          description: DIMM DDR4 Synchronous 2133 MHz (0.5 ns)
          product: HMA84GR7AFR4N-TF
          vendor: Hynix Semiconductor
          physical id: 1
          serial: 7E263C23
          slot: DIMMB1
          size: 32GiB
          width: 64 bits
          clock: 2133MHz (0.5ns)
     *-bank:2
          description: DIMM DDR4 Synchronous 2133 MHz (0.5 ns)
          product: 9965640-026.C00G
          vendor: Kingston
          physical id: 2
          serial: 7E663C92
          slot: DIMMC1
          size: 32GiB
          width: 64 bits
          clock: 2133MHz (0.5ns)
     *-bank:3
          description: DIMM DDR4 Synchronous 2133 MHz (0.5 ns)
          product: 9965640-026.C00G
          vendor: Kingston
          physical id: 3
          serial: 7E653C92
          slot: DIMMD1
          size: 32GiB
          width: 64 bits
          clock: 2133MHz (0.5ns)
  *-cache:0
       description: L1 cache
       physical id: 23
       slot: CPU Internal L1
       size: 384KiB
       capacity: 384KiB
       capabilities: internal write-back
       configuration: level=1
  *-cache:1
       description: L2 cache
       physical id: 24
       slot: CPU Internal L2
       size: 1536KiB
       capacity: 1536KiB
       capabilities: internal write-back unified
       configuration: level=2
  *-cache:2
       description: L3 cache
       physical id: 25
       slot: CPU Internal L3
       size: 15MiB
       capacity: 15MiB
       capabilities: internal write-back unified
       configuration: level=3

И ещё 1 пример для процессора. В примере используется сервер с процессором Intel(R) Xeon(R) CPU E5-1650 v3 @ 3.50GHz:

  • Кстати, утилита dmidecode покажет побольше информации.
# lshw -class processor
  *-cpu
       description: CPU
       product: Intel(R) Xeon(R) CPU E5-1650 v3 @ 3.50GHz
       vendor: Intel Corp.
       physical id: 26
       bus info: cpu@0
       version: Intel(R) Xeon(R) CPU E5-1650 v3 @ 3.50GHz
       slot: CPU1
       size: 3599MHz
       capacity: 4GHz
       width: 64 bits
       clock: 100MHz
       capabilities: lm fpu fpu_exception wp vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp x86-64 constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx f16c rdrand lahf_lm abm cpuid_fault epb invpcid_single pti intel_ppin tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid cqm xsaveopt cqm_llc cqm_occup_llc dtherm ida arat pln pts cpufreq
       configuration: cores=6 enabledcores=6 threads=12

И в третьем примере я покажу как сохранить данные в html формате:

# lshw -html > hardware.xtml

В дальнейшем этот файл можно открыть в любом современном браузере.


Если понравилась статья, подпишись на мой канал в VK.

Оставьте комментарий