Averigüe exactamente qué dispositivos están dentro de su computadora Linux o conectados a ella. Cubriremos 12 comandos para enumerar sus dispositivos conectados.
¿De qué vamos a hablar?
- 1 ¿Por qué 12 comandos?
- 2 Se requiere alguna instalación
- 3 1. El comando mount
- 4 2. El comando lsblk
- 5 3. El comando df
- 6 4. El comando fdisk
- 7 5. Los archivos /proc
- 8 6. El comando lspci
- 9 7. El comando lsusb
- 10 8. El comando lsdev
- 11 9. El Comando lshw
- 12 10. El comando lsscsi
- 13 11. El comando dmidecode
- 14 12. El comando hwinfo
- 15 Envuélvelo
¿Por qué 12 comandos?
Por muchas formas que haya de despellejar a un gato, estaría dispuesto a apostar que hay más formas de enumerar los dispositivos que están conectados o alojados dentro de su computadora Linux. Te vamos a mostrar 12 de ellos. ¡Y eso no son todos!
Inevitablemente, hay mucha superposición en la información que puede obtener de estos comandos, entonces, ¿por qué molestarse en describir tantos de ellos?
Bueno, por un lado, las variaciones en el contenido y el detalle los hacen lo suficientemente diferentes como para que algunas personas prefieran un método sobre otro. El formato de salida de un comando puede prestarse particularmente bien a un caso de uso específico. El formato de otro comando podría ser ideal para su canalización a través de grep
, u otro método de procesamiento posterior.
Principalmente, sin embargo, es para hacer que el artículo sea lo más general posible. En lugar de decidir qué comandos van a ser de interés o uso para nuestros lectores, preferimos proporcionar una amplia muestra de los comandos que están disponibles y hacer que nuestros lectores elijan cuáles usarán y cuáles dejarán intactos.
Se requiere alguna instalación
La mayoría de estos comandos se incluyen de forma predeterminada en la distribución de Linux. Ubuntu, Fedora y Manjaro se utilizaron como una muestra representativa de distribuciones de las principales ramas de las familias Debian, Red Hat y Arch.
Las tres distribuciones necesarias para instalar procinfo
, que proporciona el lsdev
mandar. El lsscsi
también era necesario instalar el comando en los tres.
Para instalar lsdev
y lsscsi
, utilice estos comandos.
Ubuntu:
sudo apt-get install procinf
sudo apt-get install lsscsi
Fedora:
sudo dnf install procinfo
sudo dnf install lsscsi
Manjaro
sudo pacman -Syu procinfo
sudo pacman -Syu lsscsi
Sorprendentemente, Manjaro, famoso por ser un tipo de distribución básica, era la distribución que tenía la mayoría de los comandos que vamos a ver preinstalados.
Ubuntu y Fedora necesarios hwinfo
instalar, y Fedora también requiere lshw
y hdparm
Instalar.
Ubuntu:
sudo apt-get install hwinfo
Fedora:
sudo dnf install hwinfo
sudo dnf install lshw
sudo dnf install hdparm
1. El comando mount
El comando mount se utiliza para montar sistemas de archivos.
Pero emitir el comando sin parámetros hace que enumere todos los sistemas de archivos montados, así como los dispositivos en los que se encuentran. Así que podemos usar esto como un medio para descubrir esos dispositivos.
mount
El resultado de mount
puede ser más largo de lo que esperaba, especialmente si ha utilizado el snap
método para instalar software. Cada vez que usas snap
Adquiere otro pseudosistema de archivos y estos se enumeran por mount
. Por supuesto, estos no tienen dispositivos físicos asociados con ellos, por lo que solo están oscureciendo la imagen real.
Si detecta un sistema de archivos real en la lista que se encuentra en un disco duro, podemos aislarlo con grep
.
Los discos duros se identifican por su nombre, generalmente llamado “sd” seguido de una letra que comienza en “a” para la primera unidad, “b” para la segunda unidad y así una. Las particiones se identifican agregando un 1 para la primera partición y 2 para la segunda partición, y así sucesivamente.
Así que el primer disco duro sería sda, y la primera partición en esa unidad se llamaría sda1. Los discos duros se interactúan a través de archivos de dispositivos especiales (llamados archivos de bloque) en /dev y luego se montan en algún lugar del árbol del sistema de archivos.
Este comando utilizado grep
para filtrar los detalles de cualquier unidad que comience con “sd”.
mount | grep /dev/sd
La salida contiene el único disco duro de la máquina que se utilizó para investigar este artículo.
La respuesta de mount
nos indica que la unidad /dev/sda está montada en /(la raíz del árbol del sistema de archivos) y tiene un sistema de archivos ext4. El “rw” indica que se ha montado en modo de lectura y escritura
Relatime es el esquema utilizado por las rutinas de actualización de marca de tiempo de archivo. El tiempo de acceso no se escribe en el disco a menos que el tiempo modificado (mtime) o el tiempo de cambio (ctime) de un archivo sea más reciente que el último tiempo de acceso, o el tiempo de acceso (atime) sea más antiguo que un umbral definido por el sistema. Esto reduce en gran medida el número de actualizaciones de disco que deben realizarse para los archivos a los que se accede con frecuencia.
El “errors=remount-ro” indica que si hay errores suficientemente graves, el sistema de archivos se volverá a montar en modo de solo lectura.
Para poder desplazarse por la salida desde mount
y detectar más fácilmente los sistemas de archivos que están montados en los dispositivos, canalizar la salida desde mount
a través de less
.
mount | less
Desplácese por la salida hasta que vea los sistemas de archivos que están conectados a archivos especiales /dev.
2. El comando lsblk
El lsblk
mandar enumera los dispositivos de bloqueo, su punto de montaje y otra información. Tipo lsblk
en una línea de comandos:
lsblk
El resultado muestra:
- Nombre: el nombre del dispositivo de bloque
- Maj:Min: El número principal muestra el tipo de dispositivo. El número mínimo es el número del dispositivo actual fuera de la lista de dispositivos de ese tipo. 7:4, por ejemplo, significa dispositivo de bucle número 4.
- MICRÓMETRO: Si el dispositivo es extraíble o no. 0 significa no, 1 significa sí.
- Tamaño es la capacidad del dispositivo.
- MICRÓMETRO: Si el dispositivo es de solo lectura o no. 0 significa no, 1 significa sí.
- Tipo: el tipo de dispositivo, por ejemplo, bucle, dir (directorio), disco, rom (CD ROM), etc.
- Punto de montaje: Donde está montado el sistema de archivos del dispositivo.
Para desordenar la salida y eliminar los dispositivos de bucle, podemos usar el -e
(excluir) y proporcionar el número del tipo de dispositivos que deseamos ignorar.
Este comando causará lsblk
para ignorar los dispositivos de bucle (7) y sala de CD (11).
lsblk -e 7,11
Los resultados ahora solo contienen el disco duro sda.
3. El comando df
El df
informes de comandos sobre las capacidades de la unidad y espacio usado y libre.
Tipo df
en la línea de comandos y presione Entrar.
df
La tabla de salida muestra:
- Fileystem: el nombre de este sistema de archivos.
- Bloques 1K: El número de bloques 1K que están disponibles en este sistema de archivos.
- Usado: El número de bloques 1K que se han utilizado en este sistema de archivos.
- Disponible: El número de bloques 1K que no se utilizan en este sistema de archivos.
- Uso%: La cantidad de espacio utilizado en este sistema de archivos dada como un porcentaje.
- Archivo: el nombre del sistema de archivos, si se especifica en la línea de comandos.
- Montado en: el punto de montaje del sistema de archivos.
Para eliminar las entradas no deseadas de la salida, utilice el comando -x
(excluir) opción. Este comando evitará que se enumeren las entradas del dispositivo de bucle.
df -x squashfs
La salida compacta es mucho más fácil de analizar para la información importante.
4. El comando fdisk
El fdisk
Command es una herramienta diseñada para manipular la tabla de particiones del disco, pero se puede utilizar para ver información También. Podemos usar esto a nuestro favor cuando estamos investigando los dispositivos en una computadora.
Utilizaremos el -l
(lista) opción para enumerar las tablas de particiones. Debido a que la salida puede ser muy larga, canalizaremos la salida desde fdisk
a través de less
. Porque fdisk
tiene el potencial de alterar las tablas de particiones de disco, debemos usar sudo
.
sudo fdisk -l
Desplazándose por less
podrá identificar los dispositivos de hardware. Aquí está la entrada para el disco duro sda. Se trata de un disco duro físico de 10 GB.
Ahora que conocemos la identidad de uno de los dispositivos de hardware podemos preguntar fdisk
informar únicamente sobre ese tema.
sudo fdisk -l /dev/sda
Obtenemos una salida de longitud considerablemente reducida.
5. Los archivos /proc
Los pseudo-archivos en /proc se pueden ver para obtener información del sistema. El archivo que veremos es /proc/mounts, que nos dará cierta información sobre los sistemas de archivos montados. No usaremos nada más grandioso que cat
para ver el archivo.
cat /proc/mounts
La lista muestra el archivo de dispositivo especial en /dev que se utiliza para interactuar con el dispositivo y el punto de montaje en el árbol del sistema de archivos.
Podemos refinar el listado usando grep
para buscar entradas con /dev/sd en ellas. Esto filtrará las unidades físicas.
cat /proc/mounts | grep /dev/sd
Esto nos da un informe mucho más manejable.
Podemos ser un poco más inclusivos usando grep
para buscar dispositivos que tengan archivos de dispositivos especiales /dev/sd y /dev/sr. Esto incluirá discos duros y el CD ROM para esta máquina.
cat /proc/partitions | grep s[rd]
Ahora hay dos dispositivos y una partición incluidos en la salida.
6. El comando lspci
El lspci
listas de comandos todos los dispositivos PCI en su computadora.
lspci
La información proporcionada es:
- Ranura: La ranura en la que está instalado el dispositivo PCi
- Clase: La clase del dispositivo.
- Nombre del proveedor: El nombre del fabricante.
- Nombre del dispositivo: El nombre del dispositivo.
- Subsistema: Nombre del proveedor del subsistema (si el dispositivo tiene un subsistema).
- Nombre del subsistema: Si el dispositivo tiene un subsistema.
- Número de revisión: El número de versión del dispositivo
- Interfaz de programación: La interfaz de programación, si el dispositivo proporciona una.
7. El comando lsusb
El lsusb
mostrará una lista de los dispositivos que son conectado a puertos USB en su computadora, así como en dispositivos habilitados para USB que están integrados en su computadora.
lsusb
Este ordenador de prueba tiene un escáner Canon conectado como dispositivo USB 5 y una unidad USB externa como dispositivo USB 4. Los dispositivos 3 y 1 son controladores de interfaz USB internos.
Puede recibir un listado más detallado utilizando el -v
(detallado) opción, y una versión aún más detallada mediante el uso de -vv
.
8. El comando lsdev
El lsdev
muestra información sobre todos los dispositivos instalados.
Este comando genera una gran cantidad de salida, por lo que vamos a canalizarla a través de menos.
lsdev | less
Hay muchos dispositivos de hardware enumerados en la salida.
9. El Comando lshw
El lshw
mandar enumera los dispositivos conectado a su computadora. Este es otro comando con mucha salida. En la computadora de prueba, se generaron más de 260 líneas de información. Lo canalizaremos a través de less
una vez más.
Tenga en cuenta que debe usar sudo
con lshw
para sacar el máximo provecho de ella. Si no lo hace, no podrá acceder a todos los dispositivos.
sudo lshw | less
Aquí está la entrada para el CD ROM con una interfaz SCSI. Como puede ver, la información proporcionada para cada dispositivo es muy detallada. lshw
lee la mayor parte de su información de los diversos archivos en /proc.
Si desea una salida más corta y menos detallada, puede utilizar el --short
opción.
10. El comando lsscsi
Como ya te imaginarías, el lsscsi
mandar enumera los dispositivos SCSI conectado a su computadora.
lsscsi
Estos son los dispositivos SCSI conectados a esta máquina de prueba.
11. El comando dmidecode
El dmidecode
comandos decodifica el Tablas de la interfaz de administración de escritorio (DMI), y extrae información relacionada con el hardware conectado al equipo y dentro del equipo.
El DMI también se conoce a veces como SMBIOS (System Management Basic Input/Output System), aunque en realidad son dos estándares diferentes.
Una vez más, vamos a canalizar esto a través de less
.
dmidecode | less
El dmidecode
puede informar sobre más de 40 tipos de hardware diferentes.
12. El comando hwinfo
El hwinfo
el comando es el más detallado de todos. Cuando decimos que necesitas canalizar algo a través de less
, esta vez no es opcional. ¡En la computadora de prueba, generó 5850 líneas de salida!
Puede comenzar las cosas suavemente incluyendo el --short
opción.
hwinfo --short
Si realmente necesita ver el detalle de grano más fino, repita esto y omita el --short
opción.
Envuélvelo
Entonces, aquí está nuestra docena de formas de investigar los dispositivos dentro de su computadora o conectados a su computadora.
Cualquiera que sea su interés particular en buscar este hardware, habrá un método en esta lista que le permitirá encontrar lo que necesita.