GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Linux-Tools:Untersuchen der Hardware im Terminal mit dmidecode

Der DMI-Tabellendecoder ist ein Befehlszeilentool für Linux-Systeme. Es wird häufig verwendet, um die DMI-Tabelle (System Management BIOS oder SMBIOS) einer Maschine in ein für Menschen lesbares Format zu übersetzen. Mit diesem Tool können Sie zusätzliche Informationen über die Hardwarekonfiguration eines Systems anzeigen und sogar Informationen erhalten, die nicht direkt mit dem aktuellen Build zusammenhängen. Informationen wie die maximal unterstützte Speichermenge oder der am schnellsten unterstützte CPU-Typ können mithilfe einiger Schlüssel-Flags gefunden werden.

Praktische Anwendung

Aus praktischer Sicht könnten Sie in Situationen geraten, in denen Sie während der Fehlerbehebung eine Seriennummer oder wichtige Hardwareinformationen benötigen. In meiner Zeit als Speicheringenieur bin ich auf mehrere Fälle gestoßen, in denen ein Kunde einen Virtual Edition-Server gekauft und dann versucht hat, riesige Mengen an Datensicherungen oder Replikation auf diesem Computer auszuführen. Abhängig von der Größe der Jobs überlasteten sie manchmal den enthaltenen Speicher und überschritten den Auslagerungsbereich. Dieses Problem würde wiederum dazu führen, dass Out-of-Memory (OOM) Killer einen großen Tag mit dem System hatte. Anstatt also Hardwarespezifikationen in einem Handbuch nachzuschlagen, könnte ich dmidecode verwenden um diese Informationen zu erhalten.

Die Aufschlüsselung

Zunächst einmal finden Sie alle folgenden Informationen in den Manpages für das Tool, indem Sie man dmidecode ausführen . Folgen Sie dort gerne weiter. Auf der einfachsten Ebene hat jeder Datensatz eines der folgenden Elemente (wie in der Manpage aufgeführt): 

Handle - Dies ist eine eindeutige Kennung, die es Datensätzen ermöglicht, aufeinander zu verweisen. Beispielsweise verweisen Prozessordatensätze normalerweise mit ihren Handles auf Cache-Speicherdatensätze.

Typ - Die SMBIOS-Spezifikation definiert verschiedene Arten von Elementen, aus denen ein Computer bestehen kann. Beispielsweise bezieht sich Typ 2 auf "Basisplatineninformationen".

Größe - Jeder Datensatz hat einen 4-Byte-Header (2 für das Handle, 1 für den Typ, 1 für die Größe), der Rest wird von den Datensatzdaten verwendet. Dieser Wert berücksichtigt nicht die Textstrings (diese werden am Ende des Datensatzes platziert), daher kann (und ist es oft) die tatsächliche Länge eines Datensatzes größer sein als der angezeigte Wert

Decodierter Wert - Die angezeigten Informationen hängen natürlich von der Art des Datensatzes ab. Hier erfahren wir Hersteller, Modell, Version und Seriennummer des Boards.

Sie können hier eine Beispielliste sehen:

Es gibt viele Optionen, die verwendet werden können, um eine genauere Ausgabe zu erstellen. Ich werde hier nicht alle behandeln, aber sie sind anhand der Manpage übersichtlich dargestellt. Worüber ich sprechen werde, sind die DMI-Typcodes, die in dem Befehl enthalten sind, um bestimmte Informationen schnell zugänglich zu machen. Wenn Sie zu meinem vorherigen Beispiel zurückkehren, werden Sie sich daran erinnern, dass wir routinemäßig Probleme mit OOM-Fehlern hatten. Um Informationen über die Speicherkonfiguration eines Systems zu sammeln, können Sie den folgenden Befehl verwenden: 

$ dmidecode -t x

wobei x ist gleich dem numerischen Typcode, den Sie erfassen möchten. Für dieses Beispiel wären die Codes 5, 6, 16 und 17 alle hilfreich, um sie zu sammeln. In der vollständigen Tabelle der Manpage unten finden Sie alle verfügbaren Typcodes:

Kurzbefehle

Schlüsselwörter können mit dem --type verwendet werden Flag, um alle zugehörigen Typcodes in den Befehl zu ziehen. Aus dem Beispiel unten können Sie ersehen, dass alle Informationen zur Verwendung der numerischen Typencodes 16 und 17 bereitgestellt werden: 

$ dmidecode --type memory

# dmidecode 3.2
Getting SMBIOS data from sysfs.
SMBIOS 3.0.0 present.

Handle 0x0003, DMI type 16, 23 bytes
Physical Memory Array
	Location: System Board Or Motherboard
	Use: System Memory
	Error Correction Type: None
	Maximum Capacity: 32 GB
	Error Information Handle: Not Provided
	Number Of Devices: 2

Handle 0x0004, DMI type 17, 40 bytes
Memory Device
	Array Handle: 0x0003
	Error Information Handle: Not Provided
	Total Width: 64 bits
	Data Width: 64 bits
	Size: 8192 MB
	Form Factor: SODIMM
	Set: None
	Locator: ChannelA-DIMM0
	Bank Locator: BANK 0
	Type: DDR4
	Type Detail: Synchronous Unbuffered (Unregistered)
	Speed: 2133 MT/s
	Manufacturer: Samsung
	Serial Number: 00000000
	Asset Tag: None
	Part Number: M471A1K43BB1-CRC    
	Rank: 1
	Configured Memory Speed: 2133 MT/s
	Minimum Voltage: Unknown
	Maximum Voltage: Unknown
	Configured Voltage: 1.2 V

Handle 0x0005, DMI type 17, 40 bytes
Memory Device
	Array Handle: 0x0003
	Error Information Handle: Not Provided
	Total Width: 64 bits
	Data Width: 64 bits
	Size: 8192 MB
	Form Factor: SODIMM
	Set: None
	Locator: ChannelB-DIMM0
	Bank Locator: BANK 2
	Type: DDR4
	Type Detail: Synchronous Unbuffered (Unregistered)
	Speed: 2133 MT/s
	Manufacturer: SK Hynix
	Serial Number: 2A7E0BA5
	Asset Tag: None
	Part Number: HMA81GS6AFR8N-UH    
	Rank: 1
	Configured Memory Speed: 2133 MT/s
	Minimum Voltage: Unknown
	Maximum Voltage: Unknown
	Configured Voltage: 1.2 V

Hier finden Sie Informationen zur Verwendung der Typencodes 5, 6, 16 und 17. 

Zusammenfassung

Ich hoffe, dass dieser kurze Überblick über das DMI-Decoder-Tool hilfreich war. Teilen Sie uns mit, wenn Sie diesen Befehl verwendet haben oder ihn benötigt haben. Hoffentlich haben Sie jetzt eine bessere Strategie oder einen besseren Bezugspunkt für das nächste Hardwareproblem, auf das Sie stoßen.

[Möchten Sie Red Hat Enterprise Linux ausprobieren? Jetzt kostenlos herunterladen.]


Linux
  1. 7 Möglichkeiten zum Anzeigen von Hardwareinformationen mit Dmidecode

  2. dmidecode:Informationen zur Systemhardware unter Linux abrufen

  3. Linux-Tools:Mit dmesg die Nachricht rausholen

  4. Linux – Wie zeigt man den Dateisystemtyp über das Terminal an??

  5. Arbeiten mit Kalendern im Linux-Terminal

Begib dich mit diesem Pac-Man-Klon in die Spielhalle in deinem Linux-Terminal

Finden Sie Informationen zur Linux-Systemhardware mit Hwinfo

So zeigen Sie Hardwareinformationen unter Linux an

Erhalten Sie Informationen über einen Befehl mit Type Command in Linux

So erhalten Sie Hardwareinformationen unter Linux mit dem Befehl dmidecode

Die 20 besten Linux-Sicherheitstools:Die Wahl des Linux-Experten