Главная | Контакты | Настройки СМЕНИТЬ ПАЛИТРУ:

Главная > Программы

dmidecode - получение сведений
об обрудовании в командной строке Linux

Наиболее полную информацию о компьютерном оборудовании в Linux, можно получить используя утилиту dmidecode, отображающую данные из структуры SMBIOS, включающую таблицы, содержащие записи о каждом из устройств, обнаруженных в данный момент времени. Для использования возможностей утилиты требуются права root

Утилита dmidecode - отображение содержимого таблиц DMI компьютера.

Интерфейс DMI ( Desktop Management Interface ) - это интеpфейс упpавления настольными компьютерными системами, представляющий собой набор программных и аппаратных средств для сбора, хранения и отображения данных об оборудовании компьютера. Спецификация DMI была разработана в 1996 г. и дорабатывалась по мере развития компьютерных систем. Поддержка интерфейса DMI встроена в BIOS всех современных материнских плат, а также осуществляется через интерфейс API в прикладных программных продуктах. Для взаимодействия с интерфейсом DMI, в BIOS материнских плат была добавлена спецификация DMIBIOS, которая с 1999 года получила название SMBIOS - System Management BIOS - системное управление BIOS. Спецификации различных версий SMBIOS опубликованы на сайте объединения Distributed Management Task Force (DMTF) : Страница спецификаций SMBIOS на сайте DMTF

В соответствии со спецификацией SMBIOS, информация DMI об оборудовании хранится в виде базы данных (DMI Pool Data), точка входа в которую определяется в структуре SMBIOS. Начальная запись содержит признак базы - строку из 5 байт _DMI_, контрольную сумму, адрес и размер.

Утилита dmidecode позволяет извлечь записи из базы данных DMI и отобразить их в требуемом виде. Командная строка:

dmidecode [OPTIONS]

Параметры командной строки:
-d, --dev-mem FILE - задать устройство для чтения данных DMI ( по умолчанию - /dev/mem)
-h, --help - отобразить справку.
-q, --quiet - минимальная детализация отображаемой информации DMI
-s, --string KEYWORD - отображать только данные DMI, соответствующие введенному ключевому слову. Перечень допустимых ключевых слов можно получить введя dmidecode -s
-t, --type TYPE - отображать только данные указанных типов. Перечень типов можно получить по команде dmidecode -t
-u, --dump - не расшифровывать получаемые данные. Отображаются только заголовки записей и шестнадцатеричные значения полей.
--dump-bin FILE - запись дампа данных DMI в файл.
--from-dump FILE - считывание и обработка данных из ранее сохраненного дампа данных DMI.
-V, --version - отобразить версию программы и завершиться.
При запуске dmidecode без параметров, отображается версия программы, общая информация базы DMI, и расшифрованное содержимое отдельных записей. Пример общей информации:

# dmidecode 2.12
SMBIOS 2.4 present.
364 structures occupying 17092 bytes.
Table at 0x000E0010.

Отображается версия программы, версия SMBIOS, количество записей и объем данных DMI, а также начальный адрес структуры DMI (0x000E0010).
Далее отображается расшифрованная информация отдельных записей:

Handle 0x0001, DMI type 38, 20 bytes
IPMI Device Information
	Interface Type: KCS (Keyboard Control Style)
	Specification Version: 2.0
	I2C Slave Address: 0x10
	NV Storage Device: Not Present
	Base Address: 0x0000000000000CA2 (I/O)
	Register Spacing: Successive Byte Boundaries

Handle 0x0002, DMI type 1, 27 bytes
System Information
	Manufacturer: Intel Corporation
	Product Name: S5520UR
	Version: ....................
	Serial Number: ............
	UUID: 817CDC18-2442-11E0-BD3C-001E670982C8
	Wake-up Type: AC Power Restored
	SKU Number: Not Specified
	Family: Not Specified

Handle 0x0003, DMI type 2, 16 bytes
Base Board Information
	Manufacturer: Intel Corporation
	Product Name: S5520UR
	Version: E22554-751
	Serial Number: BZUB10309846
	Asset Tag: ....................
	Features:
		Board is a hosting board
		Board is replaceable
	Location In Chassis: Not Specified
	Chassis Handle: 0x0004
	Type: Motherboard
	Contained Object Handles: 0

Handle 0x0004, DMI type 3, 22 bytes
Chassis Information
	Manufacturer: ...............................
	Type: Rack Mount Chassis
	Lock: Not Present
	Version: ..................
	Serial Number: ..................
	Asset Tag: ....................
	Boot-up State: Safe
	Power Supply State: Safe
	Thermal State: Safe
	Security Status: Unknown
	OEM Information: 0x01000181
	Height: 1 U
	Number Of Power Cords: 1
	Contained Elements: 0

Handle 0x0005, DMI type 0, 24 bytes
BIOS Information
	Vendor: Intel Corp.
	Version: S5500.86B.01.00.0058.061720111128
	Release Date: 06/17/2011
	Address: 0xF0000
	Runtime Size: 64 kB
	ROM Size: 8192 kB
	Characteristics:
		PCI is supported
		PNP is supported
		BIOS is upgradeable
		BIOS shadowing is allowed
		Boot from CD is supported
		Selectable boot is supported
		EDD is supported
		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)
		CGA/mono video services are supported (int 10h)
		ACPI is supported
		USB legacy is supported
		LS-120 boot is supported
		ATAPI Zip drive boot is supported
		Function key-initiated network boot is supported
		Targeted content distribution is supported
	BIOS Revision: 17.18
	Firmware Revision: 0.0

Информация каждой записи начинается с дескриптора Handle, типа записи DMI Type и ее размера в байтах. Утилита извлекает данные записей, декодирует их и представляется в виде обычного текста, позволяющего получить сведения о текущем оборудовании компьютера. Как видно из приведенных результатов выполнения dmidecode, объем отображаемой информации вполне достаточен для получения практически всех технических характеристик используемого компьютерного оборудования.

Нередко требуется получить не всю информацию, содержащуюся в таблицах DMI, а только ту, что имеет отношение к конкретному устройству или классу устройств, для чего предусмотрена возможность указания типа данных с использованием параметра -t. В качестве типа данных может быть использовано или числовое значение дескриптора Handle, или специальное ключевое слово. Допустимые ключевые слова для типов данных, задаваемых параметром -t :

bios - сведения о BIOS
system - сведения о переключателях системной платы.
baseboard - сведения о материнской плате.
chassis - сведения о переключателях и датчиках шасси.
processor - сведения о центральном процессоре (о процессорах для многопроцессорных систем).
memory - сведения об оперативной памяти.
cache - сведения о кэш-памяти.
connector - сведения о разъемах контроллеров периферийных устройств.
slot - сведения о разъемах PCI/PCI-Express
Ниже приведены примеры выполнения команды dmidecode для разных типов данных.

отобразить данные DMI о процессорах

# dmidecode -t processor

# dmidecode 2.10
SMBIOS 2.5 present.

Handle 0x0038, DMI type 4, 40 bytes
Processor Information
	Socket Designation: CPU1
	Type: Central Processor
	Family: Xeon
	Manufacturer: Intel(R) Corporation
	ID: C2 06 02 00 FF FB EB BF
	Signature: Type 0, Family 6, Model 44, 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 (Fast floating-point save and restore)
		SSE (Streaming SIMD extensions)
		SSE2 (Streaming SIMD extensions 2)
		SS (Self-snoop)
		HTT (Hyper-threading technology)
		TM (Thermal monitor supported)
		PBE (Pending break enabled)
	Version: Intel(R) Xeon(R) CPU           X5670  @ 2.93GHz
	Voltage: 1.2 V
	External Clock: 133 MHz
	Max Speed: 4000 MHz
	Current Speed: 1600 MHz
	Status: Populated, Enabled
	Upgrade: Socket LGA1366
	L1 Cache Handle: 0x003A
	L2 Cache Handle: 0x003B
	L3 Cache Handle: 0x003C
	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

Handle 0x003D, DMI type 4, 40 bytes
Processor Information
	Socket Designation: CPU2
	Type: Central Processor
	Family: Xeon
	Manufacturer: Intel(R) Corporation
	ID: C2 06 02 00 FF FB EB BF
	Signature: Type 0, Family 6, Model 44, 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 (Fast floating-point save and restore)
		SSE (Streaming SIMD extensions)
		SSE2 (Streaming SIMD extensions 2)
		SS (Self-snoop)
		HTT (Hyper-threading technology)
		TM (Thermal monitor supported)
		PBE (Pending break enabled)
	Version: Intel(R) Xeon(R) CPU           X5670  @ 2.93GHz
	Voltage: 1.2 V
	External Clock: 133 MHz
	Max Speed: 4000 MHz
	Current Speed: 1600 MHz
	Status: Populated, Enabled
	Upgrade: Socket LGA1366
	L1 Cache Handle: 0x003F
	L2 Cache Handle: 0x0040
	L3 Cache Handle: 0x0041
	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

отобразить данные DMI, относящиеся к типу "connector", т.е информацию о разъемах периферийного оборудования

# dmidecode -t connector

Handle 0x0009, DMI type 8, 9 bytes
Port Connector Information
	Internal Reference Designator: J7A2
	Internal Connector Type: None
	External Reference Designator: USB 1
	External Connector Type: Access Bus (USB)
	Port Type: USB

Handle 0x000A, DMI type 8, 9 bytes
Port Connector Information
	Internal Reference Designator: J6A2
	Internal Connector Type: None
	External Reference Designator: NIC 1
	External Connector Type: RJ-45
	Port Type: Network Port

При использовании числовых значений дескрипторов, тип данных DMI можно указывать в соответствии с таблицей:

Type Description
0 BIOS Information
1 System Information
2 Baseboard (or Module) Information
3 System Enclosure or Chassis
4 Processor Information
5 Memory Controller Information (Obsolete)
6 Memory Module Information (Obsolete)
7 Cache Information
8 Port Connector Information
9 System Slots
10 On Board Devices Information
11 OEM Strings
12 System Configuration Options
13 BIOS Language Information
14 Group Associations
15 System Event Log
16 Physical Memory Array
17 Memory Device
18 32-Bit Memory Error Information
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 (BIS) Entry Point
32 System Boot Information
33 64-Bit Memory Error Information
34 Management Device
35 Management Device Component
36 Management Device Threshold Data
37 Memory Channel
38 IPMI Device Information
39 System Power Supply
40 Additional Information
41 Onboard Devices Extended Information
42 Management Controller Host Interface
126 Inactive
127 End-of-Table
128-255 Available for system- and OEM- specific information

Возможно указание нескольких номеров дескрипторов в одной команде:
dmidecode -t 4,6 - отобразить содержимое записей DMI для процессора ( тип 4 ) и модулей памяти ( тип 6)
Совокупность выводимых утилитой данных позволяет определить параметры оборудования, которые не отображаются в явном виде.
Например, следующая информация о процессоре:

Core Count: 6
Core Enabled: 6
Thread Count: 12
говорит о том, что включен режим Hyper-threading. Если бы он был выключен, то значение Thread Count совпадало бы со значением Core Enabled


Главная > Программы