Dmidecode — это консольная утилита для Linux, которая позволяет получить информацию о системном оборудовании, извлекая данные из таблицы DMI.
Введение
Я уже писал статью — Получение информации о железе в Linux. А в текущей статье описывается специальная утилита dmidecode для сбора информации о железе вашего сервера.
Desktop Management Interface (DMI) — это стандарт, который описывает способ доступа к информации о системе. Этот стандарт используется для инвентаризации оборудования и управления системами на аппаратном уровне без необходимости прямого взаимодействия с устройствами. Вся информация хранится в специальной таблице (DMI Table), которая создаётся прошивкой BIOS или UEFI. Эта таблица содержит записи с данными о каждом аппаратном компоненте.
Утилита выводит детальную информацию о процессоре, памяти, BIOS, материнке, и других компонентах. Она не взаимодействует с железом напрямую, и работает очень быстро. Она бывает полезна для диагностики и инвентаризации без необходимости разборки вашего сервера.
Утилита dmidecode требует привилегий суперпользователя, то есть должна запускаться от имени пользователя root или с использованием sudo.
Выполнение dmidecode без дополнительных опций покажет информацию обо всех обнаруженных устройствах. Но можно ограничить вывод по определённому типу устройства с помощью опции -t.
-t bios
— информация о bios;-t system
— общая информация о компьютере как о системе;-t baseboard
— информация о материнской плате;-t chassis
— информация о корпусе устройства (тип, производитель, статус (заперт / не заперт);-t processor
— информация о процессоре (производитель, модель, количество ядер, сокет, максимальная и текущая скорость);-t memory
— информация об оперативной памяти (размер модулей, производитель, их тип и скорость);-t cache
— информация о кэше процессора (L1, L2, L3);-t connector
— информация о коннекторах на материнской плате (COM, RJ-45, USB, VGA);-t slot
— описывает pci слоты (PCI-E 3.0 X16, PCI-E 3.0 X8).
Примеры
Например, получим информацию о памяти. В примере используется сервер:
- Максимальное количество памяти в системе 256GB и 4 планки;
- Установлены 4 планки по 32GB, DDR4, 2133 MT/s, Kingston.
# dmidecode -t memory Getting SMBIOS data from sysfs. SMBIOS 3.0 present. Handle 0x0018, DMI type 16, 23 bytes Physical Memory Array Location: System Board Or Motherboard Use: System Memory Error Correction Type: Multi-bit ECC Maximum Capacity: 256 GB Error Information Handle: Not Provided Number Of Devices: 4 Handle 0x0019, DMI type 17, 40 bytes Memory Device Array Handle: 0x0018 Error Information Handle: Not Provided Total Width: 72 bits Data Width: 64 bits Size: 32 GB Form Factor: DIMM Set: None Locator: DIMMA1 Bank Locator: P0_Node0_Channel0_Dimm0 Type: DDR4 Type Detail: Synchronous Speed: 2133 MT/s Manufacturer: Kingston Serial Number: 7E376C81 Asset Tag: DIMMA1_AssetTag (date:17/19) Part Number: 9965640-007.C00G Rank: 2 Configured Memory Speed: 2133 MT/s Minimum Voltage: Unknown Maximum Voltage: Unknown Configured Voltage: Unknown Handle 0x001A, DMI type 17, 40 bytes Memory Device Array Handle: 0x0018 Error Information Handle: Not Provided Total Width: 72 bits Data Width: 64 bits Size: 32 GB Form Factor: DIMM Set: None Locator: DIMMB1 Bank Locator: P0_Node0_Channel1_Dimm0 Type: DDR4 Type Detail: Synchronous Speed: 2133 MT/s Manufacturer: Hynix Semiconductor Serial Number: 71D5B3621 Asset Tag: DIMMB1_AssetTag (date:17/30) Part Number: HMA84GR7AFR4N-TF Rank: 2 Configured Memory Speed: 2133 MT/s Minimum Voltage: Unknown Maximum Voltage: Unknown Configured Voltage: Unknown Handle 0x001B, DMI type 17, 40 bytes Memory Device Array Handle: 0x0018 Error Information Handle: Not Provided Total Width: 72 bits Data Width: 64 bits Size: 32 GB Form Factor: DIMM Set: None Locator: DIMMC1 Bank Locator: P0_Node0_Channel2_Dimm0 Type: DDR4 Type Detail: Synchronous Speed: 2133 MT/s Manufacturer: Kingston Serial Number: E10180AB Asset Tag: DIMMC1_AssetTag (date:18/01) Part Number: 9965640-026.C00G Rank: 2 Configured Memory Speed: 2133 MT/s Minimum Voltage: Unknown Maximum Voltage: Unknown Configured Voltage: Unknown Handle 0x001C, DMI type 17, 40 bytes Memory Device Array Handle: 0x0018 Error Information Handle: Not Provided Total Width: 72 bits Data Width: 64 bits Size: 32 GB Form Factor: DIMM Set: None Locator: DIMMD1 Bank Locator: P0_Node0_Channel3_Dimm0 Type: DDR4 Type Detail: Synchronous Speed: 2133 MT/s Manufacturer: Kingston Serial Number: E26548EA Asset Tag: DIMMD1_AssetTag (date:18/01) Part Number: 9965640-026.C00G Rank: 2 Configured Memory Speed: 2133 MT/s Minimum Voltage: Unknown Maximum Voltage: Unknown Configured Voltage: Unknown
И ещё 1 пример для процессора. В примере используется сервер с процессором Intel(R) Xeon(R) CPU E5-1650 v3 @ 3.50GHz:
# dmidecode -t processor Getting SMBIOS data from sysfs. SMBIOS 3.0 present. Handle 0x0026, DMI type 4, 42 bytes Processor Information Socket Designation: CPU1 Type: Central Processor Family: Xeon Manufacturer: Intel ID: F2 06 03 00 FF FB EB BF Signature: Type 0, Family 6, Model 63, Stepping 2 Flags: FPU (Floating-point unit on-chip) VME (Virtual mode extension) DE (Debugging extension) PSE (Page size extension) TSC (Time stamp counter) MSR (Model specific registers) PAE (Physical address extension) MCE (Machine check exception) CX8 (CMPXCHG8 instruction supported) APIC (On-chip APIC hardware supported) SEP (Fast system call) MTRR (Memory type range registers) PGE (Page global enable) MCA (Machine check architecture) CMOV (Conditional move instruction supported) PAT (Page attribute table) PSE-36 (36-bit page size extension) CLFSH (CLFLUSH instruction supported) DS (Debug store) ACPI (ACPI supported) MMX (MMX technology supported) FXSR (FXSAVE and FXSTOR instructions supported) SSE (Streaming SIMD extensions) SSE2 (Streaming SIMD extensions 2) SS (Self-snoop) HTT (Multi-threading) TM (Thermal monitor supported) PBE (Pending break enabled) Version: Intel(R) Xeon(R) CPU E5-1650 v3 @ 3.50GHz Voltage: 1.8 V External Clock: 100 MHz Max Speed: 4000 MHz Current Speed: 3500 MHz Status: Populated, Enabled Upgrade: Socket LGA2011-3 L1 Cache Handle: 0x0023 L2 Cache Handle: 0x0024 L3 Cache Handle: 0x0025 Serial Number: Not Specified Asset Tag: Not Specified Part Number: Not Specified Core Count: 6 Core Enabled: 6 Thread Count: 12 Characteristics: 64-bit capable Multi-Core Hardware Thread Execute Protection Enhanced Virtualization Power/Performance Control
Кстати, есть подобная утилита — lshw. Про неё у меня тоже есть статья — здесь.
Если понравилась статья, подпишись на мой канал в VK.