Lihuen
RSSRSS AtomAtom

Encontrando detalles de nuestro Hardware

Basados en una guía ya escrita trataremos de mostrar acá las diferentes maneras de averiguar las características y especificaciones de nuestro hardware.

Muchos usuarios nuevos de Linux tienen problemas para determinar las especificaciones de su máquina Linux utilizando la terminal. Las utilidades gráficas de Linux han evolucionado durante los últimos años y ofrecen los mismos detalles de forma muy bonita, pero un administrador / usuario final no tienen las herramientas en cada máquina, o no suministran la información suficiente para su análisis.

Por lo tanto en esta guía rápida vamos a aprender cómo encontrar las especificaciones de su máquina Linux desde línea de comandos. Al final de esta guía podrás obtener un inventario completo de todos los componentes en tu máquina Linux en cuestión de minutos. Esto también ayudará a encontrar los drivers correctos y qué necesita para su funcionamiento del hardware.

Parte 1: Encontrando detalles Hardware con el comando lspci

[root@localhost ~]# lspci
00:00.0 Host bridge: Intel Corporation 82865G/PE/P DRAM Controller/Host-Hub Interface (rev 02)
00:02.0 VGA compatible controller: Intel Corporation 82865G Integrated Graphics Controller (rev 02)
00:1d.0 USB Controller: Intel Corporation 82801EB/ER (ICH5/ICH5R) USB UHCI Controller #1 (rev 02)
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev c2)
00:1f.1 IDE interface: Intel Corporation 82801EB/ER (ICH5/ICH5R) IDE Controller (rev 02)
03:08.0 Ethernet controller: Intel Corporation 82562EZ 10/100 Ethernet Controller (rev 02)
....

Por lo que se ve la tarjeta gráfica es Intel Corporación 82865G Integrated Graphics Controller" y para poder buscar los drivers en internet les paso la descripción de la línea:

Lspcidetailsqb5.png

También se puede usar las opciones -v o -vv para mostrar mas información. Cuando uso lspci -v, obtengo mas detalles para el Chip de la placa gráfica.

00:02.0 VGA compatible controller: Intel Corporation 82865G Integrated Graphics Controller (rev 02) (prog-if 00 [VGA])
Subsystem: IBM Unknown device 0285
Flags: bus master, fast devsel, latency 0, IRQ 185
Memory at f0000000 (32-bit, prefetchable) [size=128M]
Memory at e8000000 (32-bit, non-prefetchable) [size=512K]
I/O ports at 1800 [size=8]
Capabilities: [d0] Power Management version 1

La herramienta lspci lee una parte de la información del bus PCI, y luego recopila información adicional de su propia base de datos de identificación de hardware. Esta información adicional se almacena en /usr/share/misc/pci.ids y contiene información como, identificador de hardware de fabricantes, dispositivos, clases y subclases. Vamos a encontrar nuestro dispositivo en este archivo:

[root@localhost ~]# cat /usr/share/hwdata/pci.ids | grep "82865G Integrated Graphics Controller"
82865G Integrated Graphics Controller

Como se puede ver nuestro dispositivo también aparece en la lista de hardware. Esta lista de hardware se mantiene actualizada en internet, y se puede utilizar la utilidad de update-pciids para descargar la versión más reciente.

Parte 2: Búsqueda de información de hardware con dmesg

dmesg es un comando de Linux que se utiliza para examinar o controlar la información mas reciente que se genera sobre el sistema. El programa ayuda a los usuarios a imprimir los mensajes de arranque.

Mientras que lspci funciona bien para descubrir nuestros dispositivos PCI, el comando dmesg permite ver los detalles del hardware detectado por el sistema operativo.

[root@localhost ~]# dmesg | less
Normal zone: 59248 pages, LIFO batch:15
DMI present.
Allocating PCI resources starting at 20000000 (gap: 10000000:eec00000)
Detected 2793.055 MHz processor.
Built 1 zonelists. Total pages: 63344
Kernel command line: ro root=/dev/VolGroup00/LogVol00 rhgb quiet
Enabling fast FPU save and restore... done.
Initializing CPU#0
CPU 0 irqstacks, hard=c07ae000 soft=c078e000
Memory: 244136k/253376k available (2139k kernel code, 8732k reserved, 866k data, 240k init, 0k highmem)
.....

Como se puede ver dmesg te da una gran cantidad de información, así que vamos a usar grep para restringir la información a lo que queremos. Por ejemplo, si estamos interesados en conocer los detalles de la memoria instalada en el sistema ejecutamos:

[root@localhost ~]# dmesg | grep -i memory
Memory: 244136k/253376k available (2139k kernel code, 8732k reserved, 866k data, 240k init, 0k highmem)
Freeing initrd memory: 2124k freed
Total HugeTLB memory allocated, 0
Non-volatile memory driver v1.2
agpgart: Detected 8060K stolen memory.
Freeing unused kernel memory: 240k freed
.....

Del mismo modo se puede usar grep para cualquier hardware que se está tratando de solucionar, por ejemplo, CPU, USB, etc.

Part 3: Buscar detallas del hardware en /proc

A veces se desea controlar la memoria física y la información de la CPU en un sistema en funcionamiento en tiempo real. Para hacer esto, habrá que inspeccionar el sistema de archivos / proc. Podríamos pensar en utilizar la herramienta "top", pero esta utilidad lee además información del sistema de archivos /proc. Asegúrese de que sólo vas a usar comando "cat" para ver la información y no modifique ninguno de los archivos en /proc.

Hacer un "ls" en la carpeta /proc para ver varios archivos y directorios que contienen información sobre tu sistema.

Lsprocxi8.png


Ahora vamos a ver qué contienen estos archivos, comencemos con cpuinfo.

[root@localhost ~]# cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 15
model : 2
model name : Intel(R) Pentium(R) 4 CPU 2.80GHz
stepping : 9 
cpu MHz : 2793.055
cache size : 512 KB
..

Ahora vayamos mas en profundidad dentro de un directorio, por ejemplo la carpeta "ide" donde podemos ver los detalles del disco rígido.

[root@localhost ~]# cat /proc/ide/ide0/hda/driver
ide-disk version 1.18
[root@localhost ~]# cat /proc/ide/ide0/hda/capacity
78156288
[root@localhost ~]# cat /proc/ide/ide0/hda/model
IC35L060AVV207-0

Part 4: Obteniendo mas información sobre tu disco rígido usando fdisk

En nuestro último paso mediante /proc, se obtuvo información muy básica sobre la configuración del disco rígido. Ahora vamos a profundizar en el uso del comando "fdisk" disponible en Linux. Vamos a tratar de obtener información sobre las particiones, el espacio disponible, el espacio asignado, swap (intercambio) y mucho más.

"fdisk" es la herramienta para manipular las particiones de Linux. Los discos rígidos generalmente se dividen en más de uno discos lógicos, también conocido como particiones. Esta información se almacena en la tabla de particiones y se encuentran en el sector 0 del disco.

Para mostrar todas las particiones del sistema, escriba:

[root@localhost ~]# fdisk -l
Disk /dev/hda: 40.0 GB, 40016019456 bytes
255 heads, 63 sectors/track, 4865 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/hda1 * 1 13 104391 83 Linux
/dev/hda2 14 4865 38973690 8e Linux LVM