В этой статье мы с вами рассмотрим и попробуем "на вкус" шикарнейшую и очень полезную Linux-утилиту dmidecode. Эта утилита позволяет пользователю узнать практически, абсолютно всё о железе (компонентах/комплектующих) вашего компьютера/ноутбука. У dmidecode нет GUI (графического интерфейса) и она является полностью консольной утилитой и при этом её возможности превосходят возможности графических аналогичных утилит. И, соответственно, качество выводимой информации о параметрах той или иной железки в компьютере/ноутбуке.
На самом деле, есть достаточное колличество подобных утилит и с GUI (Графический интерфейс), таких, как: - CPU-X (аналог CPU-Z для мелкософта) - CPU-G - Hardinfo - I-Nex и мн. мн. другие, но 👆
Если их сравнивать с dmidecode, то все, выше-перечисленные утилиты на порядок, а то и в разы уступают ей более убогой выдачей инофрмации о железе (компонентах/комплектующих) вашего компьтера/ноутбука.
Поэтому dmidecode, несмотря на её консольность, в списке подобных утилит занимает заслуженное — 1-е (первое) место!
Для того, чтобы познакомиться и опробовать dmidecode нам понадобиться Терминал (Ctrl+Alt+T).
Сразу хочу отметить, что данная утилита работает только от Суперпользователя, а значит, для её использования и запуска, перед вводом команд необходимо прописывать: sudo или перевести Терминал в режим Суперпользователя: sudo su - — и использовать dmidecode без sudo, что не безопасно!!!
Итак, давайте для начала, мы с вами откроем Помощник по использованию dmidecode командой: dmidecode -h или dmidecode --help и посмотрим, какие основные команды нам предоставляет энтот Помощник по использованию dmidecode:
Usage: dmidecode [OPTIONS] Options are: -d, --dev-mem FILE Read memory from device FILE (default: /dev/mem) -h, --help Display this help text and exit -q, --quiet Less verbose output -s, --string KEYWORD Only display the value of the given DMI string -t, --type TYPE Only display the entries of given type -H, --handle HANDLE Only display the entry of given handle -u, --dump Do not decode the entries --dump-bin FILE Dump the DMI data to a binary file --from-dump FILE Read the DMI data from a binary file --no-sysfs Do not attempt to read DMI data from sysfs files --oem-string N Only display the value of the given OEM string -V, --version Display the version and exit
И, чтобы понимать, "что, как и с чем его едят", посмотрим его перевод:
Использование: dmidecode [ВАРИАНТЫ] Варианты команд: -d, --dev-mem FILE Задать устройство для чтения данных DMI (по умолчанию - /dev/mem) -h, --help Отобразить справку -q, --quiet Минимальная детализация отображаемой информации DMI -s, --string KEYWORD Отображать только данные DMI по соответствующему введёному ключевому слову -t, --type TYPE Отображать только данные по указанному типу -H, --handle HANDLE Отображать только заголовки записей и шестнадцатеричные значения полей -u, --dump Не декодировать данные --dump-bin FILE Запись дампа данных DMI в бинарный файл --from-dump FILE Читать данные DMI из сохранённого банарного файла --no-sysfs Не пытаться читать данные DMI из sysfs файлов --oem-string N Отображать только значение данной OEM строки -V, --version Отобразить версию программы и выйти
С помощником нам всё предельно понятно.
А теперь давайте выполним запуск самой утилиты и посмотрим, что она нам выдаст.
Открываем Терминал (Ctrl+Alt+T) и вводим: sudo dmidecode
В результате отработки данной команды, мы получим с вами полный, огромный, длиннющий вывод о параметрах всего железа (компонентов/комплектующих), что имеется в компьютере/ноутбуке, наподобие, как этот, ниже, в Спойлере (вывод параметров моего железа. У вас естественно будет другой, свой):
Handle 0x0000, DMI type 0, 24 bytes BIOS Information Vendor: LENOVO Version: IEKT40AUS Release Date: 10/27/2016 Address: 0xF0000 Runtime Size: 64 kB ROM Size: 4096 kB Characteristics: PCI is supported BIOS is upgradeable BIOS shadowing is allowed Boot from CD is supported Selectable boot is supported BIOS ROM is socketed EDD is supported 5.25"/1.2 MB floppy services are supported (int 13h) 3.5"/720 kB floppy services are supported (int 13h) 3.5"/2.88 MB floppy services are supported (int 13h) Print screen service is supported (int 5h) 8042 keyboard services are supported (int 9h) Serial services are supported (int 14h) Printer services are supported (int 17h) ACPI is supported USB legacy is supported BIOS boot specification is supported Targeted content distribution is supported UEFI is supported
BIOS Revision: 1.40
Handle 0x0001, DMI type 1, 27 bytes System Information Manufacturer: LENOVO Product Name: 10130 Version: Lenovo H530 Serial Number: ES11953342 UUID: 0f82249c-1d6f-11e3-b7e2-b2db0cbd1400 Wake-up Type: Power Switch SKU Number: LENOVO_MT_1013 Family: IdeaCentre
Handle 0x0002, DMI type 2, 15 bytes Base Board Information Manufacturer: LENOVO Product Name: 367D Version: 31900004 STD Serial Number: ES11953342 Asset Tag: Features: Board is a hosting board Board is replaceable Location In Chassis: To be filled by O.E.M. Chassis Handle: 0x0003 Type: Motherboard Contained Object Handles: 0
Handle 0x0003, DMI type 3, 22 bytes Chassis Information Manufacturer: To Be Filled By O.E.M. Type: Desktop Lock: Not Present Version: To Be Filled By O.E.M. Serial Number: ES11953342 Asset Tag: Boot-up State: Safe Power Supply State: Safe Thermal State: Safe Security Status: None OEM Information: 0x00000000 Height: Unspecified Number Of Power Cords: 1 Contained Elements: 0 SKU Number: To be filled by O.E.M.
Handle 0x0004, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: J1A1 Internal Connector Type: None External Reference Designator: PS2Mouse External Connector Type: PS/2 Port Type: Mouse Port
Handle 0x0005, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: J1A1 Internal Connector Type: None External Reference Designator: Keyboard External Connector Type: PS/2 Port Type: Keyboard Port
Handle 0x0006, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: J2A1 Internal Connector Type: None External Reference Designator: TV Out External Connector Type: Mini Centronics Type-14 Port Type: Other
Handle 0x0007, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: J2A2A Internal Connector Type: None External Reference Designator: COM A External Connector Type: DB-9 male Port Type: Serial Port 16550A Compatible
Handle 0x0008, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: J2A2B Internal Connector Type: None External Reference Designator: Video External Connector Type: DB-15 female Port Type: Video Port
Handle 0x0009, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: J3A1 Internal Connector Type: None External Reference Designator: USB1 External Connector Type: Access Bus (USB) Port Type: USB
Handle 0x000A, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: J3A1 Internal Connector Type: None External Reference Designator: USB2 External Connector Type: Access Bus (USB) Port Type: USB
Handle 0x000B, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: J3A1 Internal Connector Type: None External Reference Designator: USB3 External Connector Type: Access Bus (USB) Port Type: USB
Handle 0x000C, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: J9A1 - TPM HDR Internal Connector Type: Other External Reference Designator: Not Specified External Connector Type: None Port Type: Other
Handle 0x000D, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: J9C1 - PCIE DOCKING CONN Internal Connector Type: Other External Reference Designator: Not Specified External Connector Type: None Port Type: Other
Handle 0x000E, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: J2B3 - CPU FAN Internal Connector Type: Other External Reference Designator: Not Specified External Connector Type: None Port Type: Other
Handle 0x000F, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: J6C2 - EXT HDMI Internal Connector Type: Other External Reference Designator: Not Specified External Connector Type: None Port Type: Other
Handle 0x0010, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: J3C1 - GMCH FAN Internal Connector Type: Other External Reference Designator: Not Specified External Connector Type: None Port Type: Other
Handle 0x0011, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: J1D1 - ITP Internal Connector Type: Other External Reference Designator: Not Specified External Connector Type: None Port Type: Other
Handle 0x0012, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: J9E2 - MDC INTPSR Internal Connector Type: Other External Reference Designator: Not Specified External Connector Type: None Port Type: Other
Handle 0x0013, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: J9E4 - MDC INTPSR Internal Connector Type: Other External Reference Designator: Not Specified External Connector Type: None Port Type: Other
Handle 0x0014, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: J9E3 - LPC HOT DOCKING Internal Connector Type: Other External Reference Designator: Not Specified External Connector Type: None Port Type: Other
Handle 0x0015, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: J9E1 - SCAN MATRIX Internal Connector Type: Other External Reference Designator: Not Specified External Connector Type: None Port Type: Other
Handle 0x0016, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: J9G1 - LPC SIDE BAND Internal Connector Type: Other External Reference Designator: Not Specified External Connector Type: None Port Type: Other
Handle 0x0017, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: J8F1 - UNIFIED Internal Connector Type: Other External Reference Designator: Not Specified External Connector Type: None Port Type: Other
Handle 0x0018, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: J6F1 - LVDS Internal Connector Type: Other External Reference Designator: Not Specified External Connector Type: None Port Type: Other
Handle 0x0019, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: J2F1 - LAI FAN Internal Connector Type: Other External Reference Designator: Not Specified External Connector Type: None Port Type: Other
Handle 0x001A, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: J2G1 - GFX VID Internal Connector Type: Other External Reference Designator: Not Specified External Connector Type: None Port Type: Other
Handle 0x001B, DMI type 8, 9 bytes Port Connector Information Internal Reference Designator: J1G6 - AC JACK Internal Connector Type: Other External Reference Designator: Not Specified External Connector Type: None Port Type: Other
Handle 0x001C, DMI type 9, 17 bytes System Slot Information Designation: J6B2 Type: x16 PCI Express Current Usage: In Use Length: Long ID: 0 Characteristics: 3.3 V is provided Opening is shared PME signal is supported Bus Address: 0000:00:01.0
Handle 0x001D, DMI type 9, 17 bytes System Slot Information Designation: J6B1 Type: x1 PCI Express Current Usage: In Use Length: Short ID: 1 Characteristics: 3.3 V is provided Opening is shared PME signal is supported Bus Address: 0000:00:1c.3
Handle 0x001E, DMI type 9, 17 bytes System Slot Information Designation: J6D1 Type: x1 PCI Express Current Usage: In Use Length: Short ID: 2 Characteristics: 3.3 V is provided Opening is shared PME signal is supported Bus Address: 0000:00:1c.4
Handle 0x001F, DMI type 9, 17 bytes System Slot Information Designation: J7B1 Type: x1 PCI Express Current Usage: In Use Length: Short ID: 3 Characteristics: 3.3 V is provided Opening is shared PME signal is supported Bus Address: 0000:00:1c.5
Handle 0x0020, DMI type 9, 17 bytes System Slot Information Designation: J8B4 Type: x1 PCI Express Current Usage: In Use Length: Short ID: 4 Characteristics: 3.3 V is provided Opening is shared PME signal is supported Bus Address: 0000:00:1c.6
Handle 0x0021, DMI type 10, 12 bytes On Board Device 1 Information Type: Video Status: Disabled Description: Onboard Video On Board Device 2 Information Type: Ethernet Status: Enabled Description: Onboard Ethernet On Board Device 3 Information Type: Sound Status: Disabled Description: Onboard Audio On Board Device 4 Information Type: SATA Controller Status: Enabled Description: SATA controller
Handle 0x0022, DMI type 11, 5 bytes OEM Strings String 1: N/A String 2: N/A String 3: Lenovo Service Engine Not Supported
Handle 0x0023, DMI type 12, 5 bytes System Configuration Options Option 1: scre++
Handle 0x0024, DMI type 24, 5 bytes Hardware Security Power-On Password Status: Disabled Keyboard Password Status: Enabled Administrator Password Status: Disabled Front Panel Reset Status: Not Implemented
Handle 0x0025, DMI type 32, 20 bytes System Boot Information Status: No errors detected
Handle 0x0026, DMI type 34, 11 bytes Management Device Description: LM78-1 Type: LM78 Address: 0x00000000 Address Type: I/O Port
Handle 0x0027, DMI type 26, 22 bytes Voltage Probe Description: LM78A Location: <OUT OF SPEC> Status: <OUT OF SPEC> Maximum Value: Unknown Minimum Value: Unknown Resolution: Unknown Tolerance: Unknown Accuracy: Unknown OEM-specific Information: 0x00000000 Nominal Value: Unknown
Handle 0x0032, DMI type 35, 11 bytes Management Device Component Description: To Be Filled By O.E.M. Management Device Handle: 0x0026 Component Handle: 0x002F Threshold Handle: 0x0030
Handle 0x0033, DMI type 29, 22 bytes Electrical Current Probe Description: ABC Location: <OUT OF SPEC> Status: <OUT OF SPEC> Maximum Value: Unknown Minimum Value: Unknown Resolution: Unknown Tolerance: Unknown Accuracy: Unknown OEM-specific Information: 0x00000000 Nominal Value: Unknown
Handle 0x0034, DMI type 36, 16 bytes Management Device Threshold Data
Handle 0x0035, DMI type 35, 11 bytes Management Device Component Description: To Be Filled By O.E.M. Management Device Handle: 0x0026 Component Handle: 0x0032 Threshold Handle: 0x0030
Handle 0x0036, DMI type 26, 22 bytes Voltage Probe Description: LM78A Location: Power Unit Status: OK Maximum Value: Unknown Minimum Value: Unknown Resolution: Unknown Tolerance: Unknown Accuracy: Unknown OEM-specific Information: 0x00000000 Nominal Value: Unknown
Handle 0x0037, DMI type 28, 22 bytes Temperature Probe Description: LM78A Location: Power Unit Status: OK Maximum Value: Unknown Minimum Value: Unknown Resolution: Unknown Tolerance: Unknown Accuracy: Unknown OEM-specific Information: 0x00000000 Nominal Value: Unknown
Handle 0x0038, DMI type 27, 15 bytes Cooling Device Temperature Probe Handle: 0x0037 Type: Power Supply Fan Status: OK Cooling Unit Group: 1 OEM-specific Information: 0x00000000 Nominal Speed: Unknown Or Non-rotating Description: Cooling Dev 1
Handle 0x0039, DMI type 29, 22 bytes Electrical Current Probe Description: ABC Location: Power Unit Status: OK Maximum Value: Unknown Minimum Value: Unknown Resolution: Unknown Tolerance: Unknown Accuracy: Unknown OEM-specific Information: 0x00000000 Nominal Value: Unknown
Handle 0x003A, DMI type 39, 22 bytes System Power Supply Power Unit Group: 1 Location: To Be Filled By O.E.M. Name: To Be Filled By O.E.M. Manufacturer: To Be Filled By O.E.M. Serial Number: To Be Filled By O.E.M. Asset Tag: To Be Filled By O.E.M. Model Part Number: To Be Filled By O.E.M. Revision: To Be Filled By O.E.M. Max Power Capacity: Unknown Status: Present, OK Type: Switching Input Voltage Range Switching: Auto-switch Plugged: Yes Hot Replaceable: No Input Voltage Probe Handle: 0x0036 Cooling Device Handle: 0x0038 Input Current Probe Handle: 0x0039
Handle 0x003B, DMI type 41, 11 bytes Onboard DeviceУтилита dmidecode - мониторинг железа компьютера/ноутбука Reference Designation: Onboard IGD Type: Video Status: Enabled Type Instance: 1 Bus Address: 0000:00:02.0
Handle 0x003C, DMI type 41, 11 bytes Onboard Device Reference Designation: Onboard LAN Type: Ethernet Status: Enabled Type Instance: 1 Bus Address: 0000:00:19.0
Handle 0x003D, DMI type 41, 11 bytes Onboard Device Reference Designation: Onboard 1394 Type: Other Status: Enabled Type Instance: 1 Bus Address: 0000:03:1c.2
Handle 0x003E, DMI type 4, 42 bytes Processor Information Socket Designation: SOCKET 0 Type: Central Processor Family: Core i5 Manufacturer: Intel ID: C3 06 03 00 FF FB EB BF Signature: Type 0, Family 6, Model 60, Stepping 3 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) Core(TM) i5-4430 CPU @ 3.00GHz Voltage: 1.2 V External Clock: 100 MHz Max Speed: 3000 MHz Current Speed: 3000 MHz Status: Populated, Enabled Upgrade: Socket BGA1155 L1 Cache Handle: 0x0040 L2 Cache Handle: 0x003F L3 Cache Handle: 0x0041 Serial Number: Not Specified Asset Tag: Fill By OEM Part Number: Fill By OEM Core Count: 4 Core Enabled: 4 Thread Count: 4 Characteristics: 64-bit capable
Handle 0x003F, DMI type 7, 19 bytes Cache Information Socket Designation: CPU Internal L2 Configuration: Enabled, Not Socketed, Level 2 Operational Mode: Write Back Location: Internal Installed Size: 1024 kB Maximum Size: 1024 kB Supported SRAM Types: Unknown Installed SRAM Type: Unknown Speed: Unknown Error Correction Type: Single-bit ECC System Type: Unified Associativity: 8-way Set-associative
Handle 0x0040, DMI type 7, 19 bytes Cache Information Socket Designation: CPU Internal L1 Configuration: Enabled, Not Socketed, Level 1 Operational Mode: Write Back Location: Internal Installed Size: 256 kB Maximum Size: 256 kB Supported SRAM Types: Unknown Installed SRAM Type: Unknown Speed: Unknown Error Correction Type: Single-bit ECC System Type: Other Associativity: 8-way Set-associative
Handle 0x0041, DMI type 7, 19 bytes Cache Information Socket Designation: CPU Internal L3 Configuration: Enabled, Not Socketed, Level 3 Operational Mode: Write Back Location: Internal Installed Size: 6144 kB Maximum Size: 6144 kB Supported SRAM Types: Unknown Installed SRAM Type: Unknown Speed: Unknown Error Correction Type: Single-bit ECC System Type: Unified Associativity: 12-way Set-associative
Handle 0x0042, DMI type 16, 23 bytes Physical Memory Array Location: System Board Or Motherboard Use: System Memory Error Correction Type: None Maximum Capacity: 16 GB Error Information Handle: Not Provided Number Of Devices: 2
Handle 0x0043, DMI type 17, 34 bytes Memory Device Array Handle: 0x0042 Error Information Handle: Not Provided Total Width: 64 bits Data Width: 64 bits Size: 4096 MB Form Factor: DIMM Set: None Locator: ChannelA-DIMM0 Bank Locator: BANK 0 Type: DDR3 Type Detail: Synchronous Speed: 1600 MT/s Manufacturer: 0467 Serial Number: 425F0473 Asset Tag: 9876543210 Part Number: RMR5030EB68F9W1600 Rank: 1 Configured Memory Speed: 1600 MT/s
Handle 0x0044, DMI type 15, 73 bytes System Event Log Area Length: 4096 bytes Header Start Offset: 0x0000 Header Length: 16 bytes Data Start Offset: 0x0010 Access Method: Memory-mapped physical 32-bit address Access Address: 0xFFE0B000 Status: Valid, Not Full Change Token: 0x00000001 Header Format: Type 1 Supported Log Type Descriptors: 25 Descriptor 1: Single-bit ECC memory error Data Format 1: None Descriptor 2: Multi-bit ECC memory error Data Format 2: None Descriptor 3: Parity memory error Data Format 3: None Descriptor 4: Bus timeout Data Format 4: None Descriptor 5: I/O channel block Data Format 5: None Descriptor 6: Software NMI Data Format 6: None Descriptor 7: POST memory resize Data Format 7: None Descriptor 8: POST error Data Format 8: POST results bitmap Descriptor 9: PCI parity error Data Format 9: None Descriptor 10: PCI system error Data Format 10: None Descriptor 11: CPU failure Data Format 11: None Descriptor 12: EISA failsafe timer timeout Data Format 12: None Descriptor 13: Correctable memory log disabled Data Format 13: None Descriptor 14: Logging disabled Data Format 14: None Descriptor 15: System limit exceeded Data Format 15: None Descriptor 16: Asynchronous hardware timer expired Data Format 16: None Descriptor 17: System configuration information Data Format 17: None Descriptor 18: Hard disk information Data Format 18: None Descriptor 19: System reconfigured Data Format 19: None Descriptor 20: Uncorrectable CPU-complex error Data Format 20: None Descriptor 21: Log area reset/cleared Data Format 21: None Descriptor 22: System boot Data Format 22: None Descriptor 23: End of log Data Format 23: None Descriptor 24: OEM-specific Data Format 24: OEM-specific Descriptor 25: OEM-specific Data Format 25: OEM-specific
Handle 0x0045, DMI type 133, 5 bytes OEM-specific Type Header and Data: 85 05 45 00 01 Strings: KHOIHGIUCCHHII
Handle 0x004F, DMI type 13, 22 bytes BIOS Language Information Language Description Format: Long Installable Languages: 3 en|US|iso8859-1 fr|FR|iso8859-1 zh|CN|unicode Currently Installed Language: en|US|iso8859-1
Handle 0x0051, DMI type 127, 4 bytes End Of Table
что является полной и исчерпывающей информацией обо всём, что есть в нашем компьютере/ноутбуке, но весьма неудобно для чтения и поиска конкретной информации о конкретной железке (компоненте/комплектующих), в виду объёма и длинности списка и трудности поиска нужного.
Но, если мы с вами откроем в Терминале Ман (man) - Интсрукцию по исользованию dmidecode: man dmidecode
то в его выводе в Терминале мы с вами обнаружим, что dmidecode позволяет нам осуществлять вывод сведений по конкретному сегменту железок (компонентов/комплектующих), что очень удобно, используя DMI-типы или Ключевые слова (см. ниже в Спойлере раздел DMI TYPES):
Вывод man dmidecode:
DMIDECODE(8) System Manager's Manual DMIDECODE(8)
NAME dmidecode - DMI table decoder
SYNOPSIS dmidecode [OPTIONS]
DESCRIPTION dmidecode is a tool for dumping a computer's DMI (some say SMBIOS) ta‐ ble contents in a human-readable format. This table contains a descrip‐ tion of the system's hardware components, as well as other useful pieces of information such as serial numbers and BIOS revision. Thanks to this table, you can retrieve this information without having to probe for the actual hardware. While this is a good point in terms of report speed and safeness, this also makes the presented information possibly unreliable.
The DMI table doesn't only describe what the system is currently made of, it also can report the possible evolutions (such as the fastest supported CPU or the maximal amount of memory supported).
SMBIOS stands for System Management BIOS, while DMI stands for Desktop Management Interface. Both standards are tightly related and developed by the DMTF (Desktop Management Task Force).
As you run it, dmidecode will try to locate the DMI table. It will first try to read the DMI table from sysfs, and next try reading di‐ rectly from memory if sysfs access failed. If dmidecode succeeds in locating a valid DMI table, it will then parse this table and display a list of records like this one:
Handle 0x0002, DMI type 2, 8 bytes. Base Board Information Manufacturer: Intel Product Name: C440GX+ Version: 727281-001 Serial Number: INCY92700942
Each record has:
• A handle. This is a unique identifier, which allows records to refer‐ ence each other. For example, processor records usually reference cache memory records using their handles.
• A type. The SMBIOS specification defines different types of elements a computer can be made of. In this example, the type is 2, which means that the record contains "Base Board Information".
• A size. Each record has a 4-byte header (2 for the handle, 1 for the type, 1 for the size), the rest is used by the record data. This value doesn't take text strings into account (these are placed at the end of the record), so the actual length of the record may be (and is often) greater than the displayed value.
• Decoded values. The information presented of course depends on the type of record. Here, we learn about the board's manufacturer, model, version and serial number.
-q, --quiet Be less verbose. Unknown, inactive and OEM-specific entries are not displayed. Meta-data and handle references are hidden.
-s, --string KEYWORD Only display the value of the DMI string identified by KEYWORD. KEYWORD must be a keyword from the following list: bios-vendor, bios-version, bios-release-date, system-manufacturer, system- product-name, system-version, system-serial-number, system-uuid, system-family, baseboard-manufacturer, baseboard-product-name, baseboard-version, baseboard-serial-number, baseboard-asset-tag, chassis-manufacturer, chassis-type, chassis-version, chassis-se‐ rial-number, chassis-asset-tag, processor-family, processor-man‐ ufacturer, processor-version, processor-frequency. Each keyword corresponds to a given DMI type and a given offset within this entry type. Not all strings may be meaningful or even defined on all systems. Some keywords may return more than one result on some systems (e.g. processor-version on a multi-processor sys‐ tem). If KEYWORD is not provided or not valid, a list of all valid keywords is printed and dmidecode exits with an error. This option cannot be used more than once.
Note: on Linux, most of these strings can alternatively be read directly from sysfs, typically from files under /sys/de‐ vices/virtual/dmi/id. Most of these files are even readable by regular users.
-t, --type TYPE Only display the entries of type TYPE. TYPE can be either a DMI type number, or a comma-separated list of type numbers, or a keyword from the following list: bios, system, baseboard, chas‐ sis, processor, memory, cache, connector, slot. Refer to the DMI TYPES section below for details. If this option is used more than once, the set of displayed entries will be the union of all the given types. If TYPE is not provided or not valid, a list of all valid keywords is printed and dmidecode exits with an er‐ ror.
-H, --handle HANDLE Only display the entry whose handle matches HANDLE. HANDLE is a 16-bit integer.
-u, --dump Do not decode the entries, dump their contents as hexadecimal instead. Note that this is still a text output, no binary data will be thrown upon you. The strings attached to each entry are displayed as both hexadecimal and ASCII. This option is mainly useful for debugging.
--dump-bin FILE Do not decode the entries, instead dump the DMI data to a file in binary form. The generated file is suitable to pass to --from-dump later.
--from-dump FILE Read the DMI data from a binary file previously generated using --dump-bin.
--no-sysfs Do not attempt to read DMI data from sysfs files. This is mainly useful for debugging.
--oem-string N Only display the value of the OEM string number N. The first OEM string has number 1. With special value "count", return the num‐ ber of OEM strings instead.
-h, --help Display usage information and exit
-V, --version Display the version and exit
Options --string, --type, --dump-bin and --oem-string determine the output format and are mutually exclusive.
Please note in case of dmidecode is run on a system with BIOS that boasts new SMBIOS specification, which is not supported by the tool yet, it will print out relevant message in addition to requested data on the very top of the output. Thus informs the output data is not re‐ liable.
DMI TYPES The SMBIOS specification defines the following DMI types:
Type Information ──────────────────────────────────────────── 0 BIOS 1 System 2 Baseboard 3 Chassis 4 Processor 5 Memory Controller 6 Memory Module 7 Cache 8 Port Connector 9 System Slots 10 On Board Devices 11 OEM Strings 12 System Configuration Options 13 BIOS Language 14 Group Associations 15 System Event Log 16 Physical Memory Array 17 Memory Device 18 32-bit Memory Error 19 Memory Array Mapped Address 20 Memory Device Mapped Address 21 Built-in Pointing Device 22 Portable Battery 23 System Reset 24 Hardware Security 25 System Power Controls 26 Voltage Probe 27 Cooling Device 28 Temperature Probe 29 Electrical Current Probe 30 Out-of-band Remote Access 31 Boot Integrity Services 32 System Boot 33 64-bit Memory Error 34 Management Device 35 Management Device Component 36 Management Device Threshold Data 37 Memory Channel 38 IPMI Device 39 Power Supply 40 Additional Information 41 Onboard Devices Extended Information
42 Management Controller Host Interface
Additionally, type 126 is used for disabled entries and type 127 is an end-of-table marker. Types 128 to 255 are for OEM-specific data. dmidecode will display these entries by default, but it can only decode them when the vendors have contributed documentation or code for them.
Keywords can be used instead of type numbers with --type. Each keyword is equivalent to a list of type numbers:
BUGS More often than not, information contained in the DMI tables is inaccu‐ rate, incomplete or simply wrong.
AUTHORS Alan Cox, Jean Delvare
SEE ALSO biosdecode(8), mem(4), ownership(8), vpddecode(8)
dmidecode March 2012 DMIDECODE(8)
И теперь давайте конкретнее, отдельно рассмотрим список DMI-типов и Ключевых слов и примеры их исользования:
DMI TYPES The SMBIOS specification defines the following DMI types:
Type Information ──────────────────────────────────────────── 0 BIOS 1 System 2 Baseboard 3 Chassis 4 Processor 5 Memory Controller 6 Memory Module 7 Cache 8 Port Connector 9 System Slots 10 On Board Devices 11 OEM Strings 12 System Configuration Options 13 BIOS Language 14 Group Associations 15 System Event Log 16 Physical Memory Array 17 Memory Device 18 32-bit Memory Error 19 Memory Array Mapped Address 20 Memory Device Mapped Address 21 Built-in Pointing Device 22 Portable Battery 23 System Reset 24 Hardware Security 25 System Power Controls 26 Voltage Probe 27 Cooling Device 28 Temperature Probe 29 Electrical Current Probe 30 Out-of-band Remote Access 31 Boot Integrity Services 32 System Boot 33 64-bit Memory Error 34 Management Device 35 Management Device Component 36 Management Device Threshold Data 37 Memory Channel 38 IPMI Device 39 Power Supply 40 Additional Information 41 Onboard Devices Extended Information
42 Management Controller Host Interface
Additionally, type 126 is used for disabled entries and type 127 is an end-of-table marker. Types 128 to 255 are for OEM-specific data. dmidecode will display these entries by default, but it can only decode them when the vendors have contributed documentation or code for them.
Keywords can be used instead of type numbers with --type. Each keyword is equivalent to a list of type numbers:
Keywords are matched case-insensitively. The following command lines are equivalent:
• dmidecode --type 0 --type 13
• dmidecode --type 0,13
• dmidecode --type bios
• dmidecode --type BIOS
И давайте посмотрим на перевод DMI-типов и ключевых слов:
Тип Ключевое слово ────────────────────────────── 0 BIOS 1 Система 2 Материнская плата 3 Корпус 4 Процессор 5 Контроллер памяти 6 Модуль памяти 7 Кэш-память 8 Разъемы портов 9 Системные разъемы 10 Интегрированные устройства 11 OEM строка 12 Опции системной конфигурации 13 Язык BIOS 14 Групповые ассоциации 15 Журнал системных событий 16 Массив физической памяти 17 Устройство памяти 18 32-битные ошибки памяти 19 Отображаемый адрес массива памяти 20 Отображаемый адрес устройства памяти 21 Встроенное указывающее устройство 22 Портативная батарея 23 Перезапуск системы 24 Аппаратная безопасность 25 Система управления электропитанием 26 Датчик напряжения 27 Охлаждающее устройство 28 Датчик температуры 29 Датчик текущих параметров электропитания 30 Внешний удаленный доступ 31 Службы целостности загрузки 32 Загрузка системы 33 64-битовые ошибки памяти 34 Управляющее устройство 35 Компоненты управляющего устройства 36 Пороговые данные управляющего устройства 37 Канал памяти 38 IPMI Устройство 39 Блок питания 40 Добполнительная ифнормация 41 Расширенная ифнормация об устройствах на мат. плате 42 Интерфейс управления хост-контроллером
Дополнительно, тип 126 используется для отключенных параметров, а тип 127 является маркером конца таблицы. Типы с 128 по 255 предназначены для специальных OEM-данных. dmidecode будет отображать эти параметры по умолчанию, но он может декодировать их только в том случае, если поставщики предоставили документацию или код для них.
Вместо номеров типов можно использовать Ключевые слова также с помощью тегов -t или--type. Каждое ключевое слово эквивалентно списку номеров типов:
Ключевые слова подбираются без учета регистра. Следующие команды эквивалентны (одинаковы по исполнению):
• dmidecode --type 0 --type 13
• dmidecode --type 0,13
• dmidecode --type bios
• dmidecode --type BIOS
или
• dmidecode -t 0 -t 13
• dmidecode -t 0,13
• dmidecode -t bios
• dmidecode -t BIOS
Как это работает? Давайте на конкретных примерах с вами и посмотрим.
Например, давайте узнаем, а какое питание (вольты: 1.5 или 1.35) используется для нашего модуля(ей) памяти. Согласно списку Типов и Ключевых слов, за вывод сведений об Устройсвах памяти (Memory Devices) отвечают: - Тип: 17 - Ключевое слово: Memory Device
И, соответсвтенно, для выполнения нашей задачи мы выполним в Терминале (Ctrl+Alt+T) по очереди следующие команды: (данная команда даст вывод не конкретно по питанию, а по всем параметрам модулей памяти) sudo dmidecode --type 17 sudo dmidecode -t 17 sudo dmidecode --type Memory Device sudo dmidecode -t Memory Device sudo dmidecode --type memory Device sudo dmidecode -t memory device
В результате, во всех случаях мы получим абсолютно один и тот же, одинаковый результат и вывод, кстати, наглядно говорящий нам о нашей "хотелке" - питании модуля памяти - в самой нижней строке, а именно - Configured Voltage: 1.35 V (см. в Спойлере):
Вывод dmidecode:
# dmidecode 3.1 Getting SMBIOS data from sysfs. SMBIOS 2.7 present.
Handle 0x0018, DMI type 17, 40 bytes Memory Device Array Handle: 0x0005 Error Information Handle: Not Provided Total Width: Unknown Data Width: Unknown Size: No Module Installed Form Factor: Other Set: None Locator: Bottom-Slot 1(top) Bank Locator: ChannelA Type: Unknown Type Detail: None Speed: Unknown Manufacturer: Not Specified Serial Number: Not Specified Asset Tag: Not Specified Part Number: Not Specified Rank: Unknown Configured Clock Speed: Unknown Minimum Voltage: Unknown Maximum Voltage: Unknown Configured Voltage: Unknown
Handle 0x0006, DMI type 17, 40 bytes Memory Device Array Handle: 0x0005 Error Information Handle: Not Provided Total Width: 64 bits Data Width: 64 bits Size: 4096 MB Form Factor: SODIMM Set: None Locator: Bottom-Slot 2(under) Bank Locator: ChannelB Type: DDR3 Type Detail: Synchronous Unbuffered (Unregistered) Speed: 1600 MT/s Manufacturer: Ramaxel Serial Number: 436BC413 Asset Tag: 9876543210 Part Number: RMT3170MN68F9F1600 Rank: 1 Configured Clock Speed: 1600 MT/s Minimum Voltage: Unknown Maximum Voltage: Unknown Configured Voltage: 1.35 V
Ну, и для примера, давайте выведем с вами сведения, к примеру, о двух устройствах на нашем компьютере/ноутбуке одной командой (разные варианты написания).
Например о наших Корпусе (Chassis) и Процессоре (Processor): - Типы: 3 и 4 - Ключевые слова: Chassis и Processor
И также, в результате выполнения любой из команд, получим один и тот же вывод, но уже о двух устройствах (см. в Спойлере):
Вывод dmidecode:
# dmidecode 3.2 Getting SMBIOS data from sysfs. SMBIOS 2.7 present.
Handle 0x0003, DMI type 3, 22 bytes Chassis Information Manufacturer: To Be Filled By O.E.M. Type: Desktop Lock: Not Present Version: To Be Filled By O.E.M. Serial Number: ES11953342 Asset Tag: Boot-up State: Safe Power Supply State: Safe Thermal State: Safe Security Status: None OEM Information: 0x00000000 Height: Unspecified Number Of Power Cords: 1 Contained Elements: 0 SKU Number: To be filled by O.E.M.
Handle 0x003E, DMI type 4, 42 bytes Processor Information Socket Designation: SOCKET 0 Type: Central Processor Family: Core i5 Manufacturer: Intel ID: C3 06 03 00 FF FB EB BF Signature: Type 0, Family 6, Model 60, Stepping 3 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) Core(TM) i5-4430 CPU @ 3.00GHz Voltage: 1.2 V External Clock: 100 MHz Max Speed: 3000 MHz Current Speed: 3000 MHz Status: Populated, Enabled Upgrade: Socket BGA1155 L1 Cache Handle: 0x0040 L2 Cache Handle: 0x003F L3 Cache Handle: 0x0041 Serial Number: Not Specified Asset Tag: Fill By OEM Part Number: Fill By OEM Core Count: 4 Core Enabled: 4 Thread Count: 4 Characteristics: 64-bit capable
Таким образом можно легко получить полный и исчерпывающий вывод информации о всех параметрах присутствующих в вашем компьютере/ноутбуке железок с помощью данной утилиты и теперь мы с вами знаем и умеем ей пользоваться и применять.
Всем приятного пользования утилитой dmidecode и успехов!!!
P.S. Если у вас появились вопросы или мнения по данной статье, обсудить их можно на нашем форуме: