¿Qué hardware tiene mi PC? Herramientas GNU/Linux (1)

Publicado por Diego Córdoba en

hardwareHoy veremos algunos comandos interesantes de GNU/Linux destinados a conocer nuestro hardware, lo que puede permitirnos muchas tareas interesantes, desde la compilación e instalación de módulos del kernel y drivers de aplicaciones, hasta la re-compilación de un kernel para nuestro equipo. Y por qué no, saber efectivamente qué dispositivos tenemos en nuestro sistema, marcas, fabricantes y modelos específicos.

Observación directa del hardware

La manera más fiable y, en algunos casos, más críptica, es observar directamente nuestro hardware. Digo que es más fiable, porque no hay duda que si vemos «Asus P5K-SE» en una placa madre, estamos seguros de que se trata de esa marca y modelo. Pero muchas veces con otros chips, como chipset, o módulos de memoria, las inscripciones no suelen ser de lo más fáciles de leer.

En cualquier caso, podemos obtener una excelente lista de recursos analizando las salidas de ciertos comandos y herramientas de Linux. Veamos algunos ejemplos.

lspci

lspci es un comando que lista los dispositivos pci de nuestra computadora, incluyendo información adicional de los buses PCI.

Veamos una salida simple:

[die@debian ~]$ lspci
00:00.0 Host bridge: Intel Corporation Atom Processor D4xx/D5xx/N4xx/N5xx DMI Bridge (rev 02)
00:02.0 VGA compatible controller: Intel Corporation Atom Processor D4xx/D5xx/N4xx/N5xx Integrated Graphics Controller (rev 02)
00:02.1 Display controller: Intel Corporation Atom Processor D4xx/D5xx/N4xx/N5xx Integrated Graphics Controller (rev 02)
00:1b.0 Audio device: Intel Corporation NM10/ICH7 Family High Definition Audio Controller (rev 02)
00:1c.0 PCI bridge: Intel Corporation NM10/ICH7 Family PCI Express Port 1 (rev 02)
00:1c.1 PCI bridge: Intel Corporation NM10/ICH7 Family PCI Express Port 2 (rev 02)
00:1c.2 PCI bridge: Intel Corporation NM10/ICH7 Family PCI Express Port 3 (rev 02)
00:1d.0 USB controller: Intel Corporation NM10/ICH7 Family USB UHCI Controller #1 (rev 02)
00:1d.1 USB controller: Intel Corporation NM10/ICH7 Family USB UHCI Controller #2 (rev 02)
00:1d.2 USB controller: Intel Corporation NM10/ICH7 Family USB UHCI Controller #3 (rev 02)
00:1d.3 USB controller: Intel Corporation NM10/ICH7 Family USB UHCI Controller #4 (rev 02)
00:1d.7 USB controller: Intel Corporation NM10/ICH7 Family USB2 EHCI Controller (rev 02)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e2)
00:1f.0 ISA bridge: Intel Corporation NM10 Family LPC Controller (rev 02)
00:1f.2 SATA controller: Intel Corporation NM10/ICH7 Family SATA Controller [AHCI mode] (rev 02)
00:1f.3 SMBus: Intel Corporation NM10/ICH7 Family SMBus Controller (rev 02)
01:00.0 Ethernet controller: Qualcomm Atheros AR8152 v2.0 Fast Ethernet (rev c1)
02:00.0 Network controller: Broadcom Corporation BCM4313 802.11b/g/n Wireless LAN Controller (rev 01)

Aquí vemos, por ejemplo, un dispositivo de audio Intel High Def Audio, un procesador gráfico Intel Atom, un controlador de video VGA Intel, un controlador ethernet Atheros AR8152, y un controlador wireless Broadcom BCM4313, entre otros, lo que nos sirve, por ejemplo, para poder encontrar información sobre la instalación de los controladores de estos dispositivos.

lsusb

lsusb nos permite analizar la información sobre buses y dispositivos usb del sistema.

[die@debian ~]$ lsusb
Bus 001 Device 003: ID 13d3:5702 IMC Networks UVC VGA Webcam
Bus 001 Device 002: ID 058f:6366 Alcor Micro Corp. Multi Flash Reader
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 002: ID 13d3:3315 IMC Networks Bluetooth module
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Aquí vemos, por ejemplo, información de webcam, un lector de tarjetas de memoria Alcor Micro Corp, un módulo bluetooth de IMC Networks.

lshw

lshw es otra herramienta, muy poderosa por cierto, y muy útil para rever la información de hardware que disponemos en nuestra computadora.

lshw debe ser instalado, si no viene por defecto ya en nuestra distro, mediante el gestor de paquetes de la mayoría de las distros. Por ejemplo, en Debian:

[die@debian ~]$ sudo aptitude install lshw lshw-gtk

Una forma sencilla de ejecutarla es la siguiente:

hardware

lshw también permite exportar la salida a formato html, entre otros, lo que nos da la facilidad de recorrer nuestras características desde un navegador web de una manera muy cómoda. Veamos un ejemplo:

[die@debian ~]$ sudo lshw -html > /tmp/lshw.html

Esto generarlá la salida html, y mediante el símbolo de «mayor que», estaremos redireccionando la salida estandar hacia un archivo html para poder luego abrirlo con un navegador, teniendo la siguiente salida:

lshw-html

Y, por supuesto, también tenemos la opción de consultar solo algunos flags de nuestro hardware, como el CPU por ejemplo:

sudo lshw -C CPU

lshw desde entorno grafico

También podemos acceder a un front-end de lshw llamado lshw-gtk, una intrfaz gtk para nuestro lshw, que permite que accedamos a los chequeos directamente en el entorno gráfico. Veamos una captura de su pantalla:

lshw-gtk

Conclusiones

Con esta entrega hemos aprendido a trabajar con algunos de los comandos y herramientas útiles para leer nuestro hardware.

En la siguiente entrega veremos algunos comandos adicionales y otras técnicas para conocer a fondo el equipo en el que estamos trabajando.

Espero que sea de utilidad!


Diego Córdoba

- Ingeniero en Informática - Mg. Teleinformática - Tesis pendiente - Docente universitario - Investigador