Introducción
En este laboratorio, exploraremos el comando lsblk de Linux, que muestra información sobre todos los dispositivos de bloques disponibles en su sistema. Los dispositivos de bloques incluyen discos duros, SSDs, unidades USB y otros medios de almacenamiento. El comando lsblk presenta esta información en un formato claro, similar a un árbol, que facilita la comprensión de la relación entre los diferentes dispositivos de almacenamiento y sus particiones.
Comprender los dispositivos de almacenamiento es esencial para cualquier persona que trabaje con sistemas Linux. Ya sea que necesite identificar el almacenamiento disponible, verificar los tamaños de las particiones o verificar los puntos de montaje, el comando lsblk proporciona una forma rápida y eficiente de recopilar esta información.
Al final de este laboratorio, podrá usar el comando lsblk con varias opciones para obtener información detallada sobre los dispositivos de almacenamiento en su sistema Linux.
Uso básico del comando lsblk
El comando lsblk significa "listar dispositivos de bloques" (list block devices) y se utiliza para mostrar información sobre todos los dispositivos de bloques disponibles en su sistema Linux. Los dispositivos de bloques son dispositivos de almacenamiento como discos duros, SSDs y unidades USB.
Comencemos ejecutando el comando básico lsblk en la terminal:
Abra su terminal si aún no está abierta.
Escriba el siguiente comando y presione Enter:
lsblk
Debería ver una salida similar a esta:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop0 7:0 0 55.5M 1 loop /snap/core18/2128
loop1 7:1 0 55.4M 1 loop /snap/core18/2284
loop2 7:2 0 43.6M 1 loop /snap/snapd/15534
loop3 7:3 0 61.9M 1 loop /snap/gtk-common-themes/1535
loop4 7:4 0 31.1M 1 loop /snap/snapd/16292
sda 8:0 0 50G 0 disk
├─sda1 8:1 0 49G 0 part /
└─sda2 8:2 0 976M 0 part [SWAP]
Esta salida muestra todos los dispositivos de bloques en su sistema, con las siguientes columnas:
NAME: El nombre del dispositivoMAJ:MIN: Números de dispositivo mayor y menor (major and minor device numbers)RM: Indicador de extraíble (1 significa extraíble, 0 significa no extraíble)SIZE: El tamaño del dispositivoRO: Indicador de solo lectura (1 significa solo lectura, 0 significa lectura-escritura)TYPE: Tipo de dispositivo (disco, partición, loop, etc.)MOUNTPOINT: Dónde está montado el dispositivo (si corresponde)
En el ejemplo anterior, puede ver:
- Varios dispositivos
looputilizados por los paquetes snap - Un dispositivo de almacenamiento principal
sda(que es un disco de 50GB) - Dos particiones en
sda:sda1(montada en la raíz/) ysda2(utilizada como espacio de intercambio (swap space))
La estructura de árbol en la salida facilita la visualización de qué particiones pertenecen a qué discos. Por ejemplo, puede ver que tanto sda1 como sda2 son particiones del disco sda.
Ahora que comprende la salida básica del comando lsblk, exploremos algunas opciones útiles en los siguientes pasos.
Visualización de información adicional con lsblk
En este paso, aprenderemos a usar el comando lsblk con diferentes opciones para mostrar información más detallada sobre los dispositivos de bloques.
Uso de la opción -f para mostrar información del sistema de archivos
La opción -f muestra información del sistema de archivos, incluyendo el tipo de sistema de archivos, la etiqueta, el UUID y el punto de montaje. Esto es particularmente útil cuando necesita identificar dispositivos por su UUID o verificar qué tipos de sistemas de archivos están en uso.
Ejecute el siguiente comando en su terminal:
lsblk -f
Debería ver una salida similar a esta:
NAME FSTYPE LABEL UUID MOUNTPOINT
loop0 squashfs /snap/core18/2128
loop1 squashfs /snap/core18/2284
loop2 squashfs /snap/snapd/15534
loop3 squashfs /snap/gtk-common-themes/1535
loop4 squashfs /snap/snapd/16292
sda
├─sda1 ext4 5fbb8eed-12a3-4b5c-9d67-9594ff4e2d1c /
└─sda2 swap b409ae25-7589-44eb-a909-b56f1d42c5ab [SWAP]
La salida ahora incluye columnas adicionales:
FSTYPE: El tipo de sistema de archivos (ext4, swap, squashfs, etc.)LABEL: Cualquier etiqueta del sistema de archivos que se haya asignadoUUID: El Identificador Único Universal (Universal Unique Identifier) para el sistema de archivos
Uso de la opción -m para mostrar información del propietario y el modo del dispositivo
La opción -m muestra los permisos y la información del propietario para los dispositivos de bloques. Esto es útil cuando se solucionan problemas relacionados con los permisos.
Ejecute el siguiente comando:
lsblk -m
Debería ver una salida como esta:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT OWNER GROUP MODE
loop0 7:0 0 55.5M 1 loop /snap/core18/2128 root disk brw-rw----
loop1 7:1 0 55.4M 1 loop /snap/core18/2284 root disk brw-rw----
loop2 7:2 0 43.6M 1 loop /snap/snapd/15534 root disk brw-rw----
loop3 7:3 0 61.9M 1 loop /snap/gtk-common-themes/1535 root disk brw-rw----
loop4 7:4 0 31.1M 1 loop /snap/snapd/16292 root disk brw-rw----
sda 8:0 0 50G 0 disk root disk brw-rw----
├─sda1 8:1 0 49G 0 part / root disk brw-rw----
└─sda2 8:2 0 976M 0 part [SWAP] root disk brw-rw----
Las nuevas columnas muestran:
OWNER: El usuario propietario del dispositivo (típicamente root)GROUP: El grupo propietario del dispositivo (típicamente disk)MODE: El modo de permiso del dispositivo
Uso de la opción -o para seleccionar columnas de salida específicas
La opción -o le permite especificar qué columnas mostrar. Esto es útil cuando solo necesita cierta información y desea una salida más limpia y enfocada.
Mostremos solo las columnas de nombre, tamaño y punto de montaje:
lsblk -o NAME,SIZE,MOUNTPOINT
La salida será mucho más simple:
NAME SIZE MOUNTPOINT
loop0 55.5M /snap/core18/2128
loop1 55.4M /snap/core18/2284
loop2 43.6M /snap/snapd/15534
loop3 61.9M /snap/gtk-common-themes/1535
loop4 31.1M /snap/snapd/16292
sda 50G
├─sda1 49G /
└─sda2 976M [SWAP]
Esta salida personalizada facilita la concentración en la información que necesita. Puede combinar múltiples opciones para obtener exactamente la información que desea en el formato que mejor se adapte a sus necesidades.
Filtrado de dispositivos de bloques con lsblk
En este paso, aprenderemos a filtrar la salida del comando lsblk para enfocarnos en tipos específicos de dispositivos de bloques o mostrar información en diferentes formatos.
Filtrado por tipo de dispositivo
El comando lsblk le permite filtrar dispositivos por su tipo utilizando la opción --type o -t. Los tipos de dispositivos comunes incluyen:
disk: Discos físicospart: Particionesloop: Dispositivos looplvm: Volúmenes lógicos (Logical volumes)
Para mostrar solo los dispositivos de disco, ejecute el siguiente comando:
lsblk --type disk
La salida mostrará solo los discos principales, sin sus particiones:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 50G 0 disk
De manera similar, para mostrar solo los dispositivos de partición, ejecute:
lsblk --type part
La salida mostrará solo las particiones:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda1 8:1 0 49G 0 part /
sda2 8:2 0 976M 0 part [SWAP]
Visualización de rutas de dispositivos
La opción --paths muestra las rutas completas de los dispositivos en lugar de solo los nombres de los dispositivos. Esto es útil cuando necesita hacer referencia a los dispositivos en scripts o comandos.
Ejecute el siguiente comando:
lsblk --paths
La salida incluirá las rutas completas de los dispositivos:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
/dev/loop0 7:0 0 55.5M 1 loop /snap/core18/2128
/dev/loop1 7:1 0 55.4M 1 loop /snap/core18/2284
/dev/loop2 7:2 0 43.6M 1 loop /snap/snapd/15534
/dev/loop3 7:3 0 61.9M 1 loop /snap/gtk-common-themes/1535
/dev/loop4 7:4 0 31.1M 1 loop /snap/snapd/16292
/dev/sda 8:0 0 50G 0 disk
├─/dev/sda1 8:1 0 49G 0 part /
└─/dev/sda2 8:2 0 976M 0 part [SWAP]
Visualización de la salida en formato JSON
La opción --json genera la información en formato JSON, lo cual es útil para el procesamiento programático o cuando se integra con otras herramientas.
Ejecute el siguiente comando:
lsblk --json
La salida estará en formato JSON:
{
"blockdevices": [
{
"name": "loop0",
"maj:min": "7:0",
"rm": false,
"size": "55.5M",
"ro": true,
"type": "loop",
"mountpoint": "/snap/core18/2128"
},
{
"name": "loop1",
"maj:min": "7:1",
"rm": false,
"size": "55.4M",
"ro": true,
"type": "loop",
"mountpoint": "/snap/core18/2284"
},
{
"name": "loop2",
"maj:min": "7:2",
"rm": false,
"size": "43.6M",
"ro": true,
"type": "loop",
"mountpoint": "/snap/snapd/15534"
},
{
"name": "loop3",
"maj:min": "7:3",
"rm": false,
"size": "61.9M",
"ro": true,
"type": "loop",
"mountpoint": "/snap/gtk-common-themes/1535"
},
{
"name": "loop4",
"maj:min": "7:4",
"rm": false,
"size": "31.1M",
"ro": true,
"type": "loop",
"mountpoint": "/snap/snapd/16292"
},
{
"name": "sda",
"maj:min": "8:0",
"rm": false,
"size": "50G",
"ro": false,
"type": "disk",
"children": [
{
"name": "sda1",
"maj:min": "8:1",
"rm": false,
"size": "49G",
"ro": false,
"type": "part",
"mountpoint": "/"
},
{
"name": "sda2",
"maj:min": "8:2",
"rm": false,
"size": "976M",
"ro": false,
"type": "part",
"mountpoint": "[SWAP]"
}
]
}
]
}
Combinación de opciones para un control preciso
Puede combinar múltiples opciones para obtener exactamente la información que necesita. Por ejemplo, para mostrar solo los dispositivos de disco con sus rutas completas en formato JSON:
lsblk --type disk --paths --json
La salida será una representación JSON de solo los dispositivos de disco con sus rutas completas:
{
"blockdevices": [
{
"name": "/dev/sda",
"maj:min": "8:0",
"rm": false,
"size": "50G",
"ro": false,
"type": "disk"
}
]
}
Estas opciones de filtrado hacen que el comando lsblk sea muy flexible y le permiten obtener precisamente la información que necesita sobre los dispositivos de bloques en su sistema.
Uso avanzado de lsblk para escenarios prácticos
En este paso, exploraremos escenarios prácticos donde el comando lsblk resulta valioso para tareas de administración y solución de problemas del sistema.
Verificación del uso del disco y el espacio disponible
Para verificar el uso del disco y el espacio disponible, puede combinar lsblk con la opción -b (para mostrar los tamaños en bytes) y seleccionar columnas específicas:
lsblk -b -o NAME,SIZE,FSAVAIL,FSUSE%,MOUNTPOINT
La salida mostrará información sobre el uso del disco:
NAME SIZE FSAVAIL FSUSE% MOUNTPOINT
loop0 58195968 0 - /snap/core18/2128
loop1 58130432 0 - /snap/core18/2284
loop2 45719552 0 - /snap/snapd/15534
loop3 64897024 0 - /snap/gtk-common-themes/1535
loop4 32604160 0 - /snap/snapd/16292
sda 53687091200 - -
├─sda1 52613349376 39128932352 26% /
└─sda2 1023410176 0 - [SWAP]
Las columnas muestran:
SIZE: El tamaño total en bytesFSAVAIL: Espacio disponible en el sistema de archivosFSUSE%: Porcentaje del sistema de archivos utilizadoMOUNTPOINT: Dónde está montado el dispositivo
Identificación de unidades USB
Cuando conecta una unidad USB, puede usar lsblk para identificarla rápidamente buscando dispositivos extraíbles:
lsblk -o NAME,SIZE,TYPE,RM,MOUNTPOINT
En la salida, busque dispositivos con el valor RM (extraíble) de 1:
NAME SIZE TYPE RM MOUNTPOINT
loop0 55.5M loop 0 /snap/core18/2128
loop1 55.4M loop 0 /snap/core18/2284
loop2 43.6M loop 0 /snap/snapd/15534
loop3 61.9M loop 0 /snap/gtk-common-themes/1535
loop4 31.1M loop 0 /snap/snapd/16292
sda 50G disk 0
├─sda1 49G part 0 /
└─sda2 976M part 0 [SWAP]
Si tuviera una unidad USB conectada, normalmente aparecería como un disco adicional (como sdb) con un valor RM de 1.
Búsqueda de números de serie de dispositivos
Para el inventario de hardware o la solución de problemas, es posible que necesite encontrar los números de serie de los dispositivos. El comando lsblk puede mostrar esta información:
lsblk -o NAME,SIZE,TYPE,SERIAL
La salida incluirá los números de serie de los dispositivos que proporcionen esta información:
NAME SIZE TYPE SERIAL
loop0 55.5M loop
loop1 55.4M loop
loop2 43.6M loop
loop3 61.9M loop
loop4 31.1M loop
sda 50G disk ABCD1234
├─sda1 49G part
└─sda2 976M part
Tenga en cuenta que no todos los dispositivos informan números de serie, y los dispositivos virtuales como los dispositivos loop normalmente no tienen números de serie.
Análisis de atributos de rendimiento del disco
Para ver los atributos de rendimiento del disco, puede usar la opción --topology o -t:
lsblk --topology
La salida incluye información de topología como la alineación y el tamaño óptimo de E/S:
NAME ALIGNMENT MIN-IO OPT-IO PHY-SEC LOG-SEC ROTA SCHED RQ-SIZE RA WSAME
loop0 0 512 0 512 512 1 mq-deadline 256 128 0B
loop1 0 512 0 512 512 1 mq-deadline 256 128 0B
loop2 0 512 0 512 512 1 mq-deadline 256 128 0B
loop3 0 512 0 512 512 1 mq-deadline 256 128 0B
loop4 0 512 0 512 512 1 mq-deadline 256 128 0B
sda 0 512 0 512 512 1 mq-deadline 256 128 0B
├─sda1 0 512 0 512 512 1 mq-deadline 256 128 0B
└─sda2 0 512 0 512 512 1 mq-deadline 256 128 0B
Esta información puede ser útil para la optimización del rendimiento y la solución de problemas relacionados con E/S.
Estos ejemplos prácticos demuestran cuán versátil es el comando lsblk para las tareas diarias de administración del sistema. Al dominar estas técnicas, puede recopilar rápidamente información importante sobre los dispositivos de almacenamiento en su sistema Linux.
Resumen
En este laboratorio, exploramos el comando lsblk de Linux, una herramienta poderosa para listar y mostrar información sobre dispositivos de bloques en su sistema. Cubrimos varios aspectos importantes del comando:
- Uso básico de
lsblkpara mostrar una lista en forma de árbol de todos los dispositivos de bloques - Cómo mostrar información adicional, incluidos los detalles del sistema de archivos, el propietario/permisos y las selecciones de columnas personalizadas
- Técnicas de filtrado para enfocarse en tipos de dispositivos específicos o formatos de visualización
- Escenarios de uso avanzado para tareas de administración del sistema
El comando lsblk es una herramienta esencial para los administradores y usuarios de sistemas Linux que necesitan administrar dispositivos de almacenamiento. Sus opciones flexibles le permiten obtener rápidamente la información exacta que necesita sobre discos, particiones y otros dispositivos de bloques en su sistema.
Al dominar el comando lsblk, puede de manera más efectiva:
- Identificar y administrar dispositivos de almacenamiento
- Monitorear el uso del disco y el espacio disponible
- Solucionar problemas relacionados con el almacenamiento
- Documentar la configuración de almacenamiento de su sistema
Estas habilidades forman una base importante para tareas de administración de sistemas Linux más avanzadas relacionadas con la gestión del almacenamiento.



