¿Cómo saber las características de hardware de un sistema con Linux sin tener acceso físico o abrir el chasis?
Autor: Joel Barrios
Thursday 2nd of June 11:31 AM

Suele ser necesario conocer las características de una PC o servidor, pero en muchas ocasiones es imposible hacerlo debido a que se carece de acceso físico ―cuando el servidor está en un centro de datos― o se quiere evitar tener que abrir el chasis. Hay dos formas sencillas de conocer las características de hardware.
Metodo 1: dmidecode.
Dmidecode es las forma más simple de examinar las características de hardware. Viene instalado pro defecto en prácticamente todas las distribuciones de Linux. Se requiere ejecutar como root.
Su sintaxis es muy sencilla:
[sudo, su -l -c] dmidecode -t [tipo de hardware: bios, system, baseboard, chassis, processor, memory, cache, connector, slot]
Por ejemplo, si se desea conocer cuántos módulos de memoria tiene el sistema, se ejecuta lo siguiente:
sudo dmidecode -t memory
La salida será un tanto extensa, pero básicamente presentará la información de los módulos de memoria instalados. ejemplo:
# dmidecode 3.3
Getting SMBIOS data from sysfs.
SMBIOS 3.2.1 present.
Handle 0x0026, DMI type 16, 23 bytes
Physical Memory Array
Location: System Board Or Motherboard
Use: System Memory
Error Correction Type: None
Maximum Capacity: 256 GB
Error Information Handle: 0x0025
Number Of Devices: 4
Handle 0x002D, DMI type 17, 40 bytes
Memory Device
Array Handle: 0x0026
Error Information Handle: 0x002C
Total Width: 64 bits
Data Width: 64 bits
Size: 8 GB
Form Factor: DIMM
Set: None
Locator: DIMM 0
Bank Locator: P0 CHANNEL A
Type: DDR4
Type Detail: Synchronous Unbuffered (Unregistered)
Speed: 2400 MT/s
Manufacturer: A-DATA Technology
Serial Number: XXXXXXXX
Asset Tag: Not Specified
Part Number:
Rank: 1
Configured Memory Speed: 2400 MT/s
Minimum Voltage: 1.2 V
Maximum Voltage: 1.2 V
Configured Voltage: 1.2 V
Handle 0x0030, DMI type 17, 40 bytes
Memory Device
Array Handle: 0x0026
Error Information Handle: 0x002F
Total Width: 64 bits
Data Width: 64 bits
Size: 8 GB
Form Factor: DIMM
Set: None
Locator: DIMM 1
Bank Locator: P0 CHANNEL A
Type: DDR4
Type Detail: Synchronous Unbuffered (Unregistered)
Speed: 2400 MT/s
Manufacturer: A-DATA Technology
Serial Number: XXXXXXXX
Asset Tag: Not Specified
Part Number:
Rank: 1
Configured Memory Speed: 2400 MT/s
Minimum Voltage: 1.2 V
Maximum Voltage: 1.2 V
Configured Voltage: 1.2 V
Handle 0x0033, DMI type 17, 40 bytes
Memory Device
Array Handle: 0x0026
Error Information Handle: 0x0032
Total Width: 64 bits
Data Width: 64 bits
Size: 8 GB
Form Factor: DIMM
Set: None
Locator: DIMM 0
Bank Locator: P0 CHANNEL B
Type: DDR4
Type Detail: Synchronous Unbuffered (Unregistered)
Speed: 2400 MT/s
Manufacturer: A-DATA Technology
Serial Number: XXXXXXXX
Asset Tag: Not Specified
Part Number:
Rank: 1
Configured Memory Speed: 2400 MT/s
Minimum Voltage: 1.2 V
Maximum Voltage: 1.2 V
Configured Voltage: 1.2 V
Handle 0x0036, DMI type 17, 40 bytes
Memory Device
Array Handle: 0x0026
Error Information Handle: 0x0035
Total Width: 64 bits
Data Width: 64 bits
Size: 8 GB
Form Factor: DIMM
Set: None
Locator: DIMM 1
Bank Locator: P0 CHANNEL B
Type: DDR4
Type Detail: Synchronous Unbuffered (Unregistered)
Speed: 2400 MT/s
Manufacturer: A-DATA Technology
Serial Number: XXXXXXXX
Asset Tag: Not Specified
Part Number:
Rank: 1
Configured Memory Speed: 2400 MT/s
Minimum Voltage: 1.2 V
Maximum Voltage: 1.2 V
Configured Voltage: 1.2 V
El sistema mostrado en el ejemplo tiene 4 módulos de 8 GB cada uno para un total de 32 GB RAM. Proporciona detalles técnicos e incluso datos como números de serie.
Para obtener la información del CPU o CPUs presentes en el sistema, se ejecuta lo siguiente:
sudo dmidecode -t processor
La salida sería similar a la siguiente:
# dmidecode 3.3
Getting SMBIOS data from sysfs.
SMBIOS 3.2.1 present.
Handle 0x002B, DMI type 4, 48 bytes
Processor Information
Socket Designation: AM4
Type: Central Processor
Family: Zen
Manufacturer: Advanced Micro Devices, Inc.
ID: 10 0F 81 00 FF FB 8B 17
Signature: Family 23, Model 17, Stepping 0
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)
MMX (MMX technology supported)
FXSR (FXSAVE and FXSTOR instructions supported)
SSE (Streaming SIMD extensions)
SSE2 (Streaming SIMD extensions 2)
HTT (Multi-threading)
Version: AMD Ryzen 5 2400G with Radeon Vega Graphics
Voltage: 1.5 V
External Clock: 100 MHz
Max Speed: 3900 MHz
Current Speed: 3600 MHz
Status: Populated, Enabled
Upgrade: Socket AM4
L1 Cache Handle: 0x0028
L2 Cache Handle: 0x0029
L3 Cache Handle: 0x002A
Serial Number: Unknown
Asset Tag: Unknown
Part Number: Unknown
Core Count: 4
Core Enabled: 4
Thread Count: 8
Characteristics:
64-bit capable
Multi-Core
Hardware Thread
Execute Protection
Enhanced Virtualization
Power/Performance Control
La salida devolverá los detalles técnicos del CPU o CPUs presentes en el sistema. Lo más relevante sería el modelo y velocidad del CPU. En el ejemplo anterior se trata de un AMD Ryzen 5 2400g que trabaja hasta 3900 MHz y que dispone de 4 núcleos con 8 hilos.
Para conocer las características de la tarjeta madre, se ejecuta lo siguiente:
sudo dmidecode -t baseboard
La salida puede ser similar a la siguiente:
# dmidecode 3.3
Getting SMBIOS data from sysfs.
SMBIOS 3.2.1 present.
Handle 0x0002, DMI type 2, 15 bytes
Base Board Information
Manufacturer: GHIA
Product Name: B450M-DS3H
Version: 1.0
Serial Number: To be filled by O.E.M.
Asset Tag: To be filled by O.E.M.
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 0x001E, DMI type 10, 6 bytes
On Board Device Information
Type: Video
Status: Enabled
Description: To Be Filled By O.E.M.
Handle 0x0022, DMI type 41, 11 bytes
Onboard Device
Reference Designation: Onboard IGD
Type: Video
Status: Enabled
Type Instance: 1
Bus Address: 0000:00:02.0
Handle 0x0023, 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 0x0024, DMI type 41, 11 bytes
Onboard Device
Reference Designation: Onboard 1394
Type: Other
Status: Enabled
Type Instance: 1
Bus Address: 0000:03:1c.2
La información relevante es el modelo exacto de la tarjeta madre. En este caso se trata del modelo B450M-DS3H ―fabricado por Gygabyte pero comercializado por Ghia.
Para conocer las características del chasis, se ejecuta lo siguiente:
sudo dmidecode -t chassis
La salida puede ser similar a la siguiente cuando se trata de un chasis que proporciona información:
# dmidecode 3.3
Getting SMBIOS data from sysfs.
SMBIOS 3.2.1 present.
Handle 0x0003, DMI type 3, 22 bytes
Chassis Information
Manufacturer: GHIA
Type: Desktop
Lock: Not Present
Version: FRONTIER-SLIM
Serial Number: To be filled by O.E.M.
Asset Tag: FLR
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.
En este caso se trata de un chasis Frontier-Slim de Ghia.
Si se trata de un equipo de marca y se desea conocer qué modelo de equipo se trata, se ejecuta lo siguiente:
sudo dmidecode -t system
La salida será similar a la siguiente:
# dmidecode 3.3
Getting SMBIOS data from sysfs.
SMBIOS 3.2.1 present.
Handle 0x0001, DMI type 1, 27 bytes
System Information
Manufacturer: GHIA
Product Name: PCGHIA-2546
Version: DESKTOP
Serial Number: 361249
UUID: xxxxxx-xxxx-xxxx-xxxx-xxxxxxxx
Wake-up Type: Other
SKU Number: PCGHIA-2546
Family: FRONTIER-SLIM
Handle 0x0020, DMI type 12, 5 bytes
System Configuration Options
Option 1: To be filled by O.E.M.
Handle 0x0021, DMI type 32, 20 bytes
System Boot Information
Status: No errors detected
En el ejemplo anterior se trata de una PC de escritorio modelo PCGHIA-2546 de la familia Frontier-Slim de Ghia.
Pueden revisarse otros detalles más técnicos como los conectores y cache usando las opciones -t connector
y -t cache
.
Metodo 2: lshw-gui.
Lshw es una herramienta que básicamente sirve de frente gráfico para dmidecode y otras herramientas del sistema. Por lo general esta ausente en la instalación predeterminada de la mayoría de las distribuciones Linux. Tiene dos componentes: lshw
y lshw-gui
. El primero es la herramienta para terminal y el segundo es una interfaz gráfica. Obviamente es más fácil examinar la información utilizando la interfaz gráfica.
Tiene que ejecutarse con privilegios de root para poder examinar la información del sistema, sea utilizando sudo o dejando que pkexec se encargue.
sudo lshw-gui
Se mostrará algo similar a lo siguiente una vez que se hace doble clic en los componentes que van a apareciendo:
