Introducción
Existen muchas herramientas disponibles para gestionar el almacenamiento en Linux. Sin embargo, solo unas pocas se utilizan para el mantenimiento y la administración diarios. En esta guía, revisará algunas de las utilidades más utilizadas para gestionar puntos de montaje, dispositivos de almacenamiento y sistemas de archivos.
Otros recursos
Esta guía no explica cómo preparar los dispositivos de almacenamiento para su uso inicial en un sistema Linux. Esta guía sobre particionado y formateo de dispositivos de bloque en Linux le ayudará a preparar su dispositivo de almacenamiento si aún no lo ha configurado.
Para obtener más información sobre la terminología utilizada para hablar sobre almacenamiento, prueba a leer este artículo sobre terminología de almacenamiento .
Cómo encontrar la capacidad y el uso del almacenamiento con df
A menudo, la información más importante que necesitará sobre el almacenamiento en su sistema es la capacidad y la utilización actual de los dispositivos de almacenamiento conectados.
Para comprobar el espacio de almacenamiento disponible en total y ver el uso actual de sus unidades, utilice la utilidad df . Por defecto, esta genera las mediciones en bloques de 1K, lo cual no siempre es útil. Añada la -h
opción para generar la salida en unidades legibles:
df -h
OutputFilesystem Size Used Avail Use% Mounted on
udev 238M 0 238M 0% /dev
tmpfs 49M 624K 49M 2% /run
/dev/vda1 20G 1.1G 18G 6% /
tmpfs 245M 0 245M 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 245M 0 245M 0% /sys/fs/cgroup
tmpfs 49M 0 49M 0% /run/user/1000
/dev/sda1 99G 60M 94G 1% /mnt/data
La /dev/vda1
partición, montada en /
, está llena al 6 % y tiene 18 GB de espacio disponible, mientras que la /dev/sda1
partición, montada en , /mnt/data
está vacía y tiene 94 GB de espacio disponible. Las demás entradas usan sistemas de archivos tmpfs
o devtmpfs
, que es memoria volátil utilizada como si fuera almacenamiento permanente. Puede excluir estas entradas escribiendo:
df -h -x tmpfs -x devtmpfs
OutputFilesystem Size Used Avail Use% Mounted on
/dev/vda1 20G 1.1G 18G 6% /
/dev/sda1 99G 60M 94G 1% /mnt/data
Esta salida ofrece una visualización más enfocada de la utilización actual del disco al eliminar algunos pseudodispositivos y dispositivos especiales.
Encontrar información sobre dispositivos de bloque con lsblk
Un dispositivo de bloque es un término genérico para un dispositivo de almacenamiento que lee o escribe en bloques de un tamaño específico. Este término se aplica a casi cualquier tipo de almacenamiento no volátil, incluyendo discos duros (HDD), unidades de estado sólido (SSD), etc. El dispositivo de bloque es el dispositivo físico donde se escribe el sistema de archivos. El sistema de archivos, a su vez, determina cómo se almacenan los datos y archivos.
La utilidad lsblk permite mostrar información sobre dispositivos de bloque. Las funciones específicas de la utilidad dependen de la versión instalada, pero en general, el lsblk
comando permite mostrar información sobre la unidad, así como la información de partición y el sistema de archivos que se ha escrito en ella.
Sin argumentos, lsblk
mostrará los nombres de los dispositivos, los números mayor y menor asociados a cada uno (usados por el kernel de Linux para el seguimiento de controladores y dispositivos), si la unidad es extraíble, su tamaño, si está montada en modo de solo lectura, su tipo (disco o partición) y su punto de montaje. Algunos sistemas requieren sudo
que esto se muestre correctamente:
sudo lsblk
OutputNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 100G 0 disk
vda 253:0 0 20G 0 disk
└─vda1 253:1 0 20G 0 part /
De la salida mostrada, las partes más importantes suelen ser el nombre (que se refiere al nombre del dispositivo bajo [nombre del dispositivo /dev
]), el tamaño, el tipo y el punto de montaje. Aquí, puede ver que tiene un disco [nombre /dev/vda
del dispositivo] con una sola partición [ /dev/vda1
nombre del /
dispositivo] y otro disco [nombre del /dev/sda
dispositivo] sin particionar.
Para obtener información más relevante para la administración de discos y particiones, puede pasar la --fs
bandera en algunas versiones:
sudo lsblk --fs
OutputNAME FSTYPE LABEL UUID MOUNTPOINT
sda
vda
└─vda1 ext4 DOROOT c154916c-06ea-4268-819d-c0e36750c1cd /
Si la --fs
bandera no está disponible en su sistema, puede replicar manualmente la salida usándola -o
para solicitar una salida específica. Puede usar -o NAME,FSTYPE,LABEL,UUID,MOUNTPOINT
para obtener esta misma información.
Para obtener información sobre la topología del disco, escriba:
sudo lsblk -t
OutputNAME ALIGNMENT MIN-IO OPT-IO PHY-SEC LOG-SEC ROTA SCHED RQ-SIZE RA WSAME
sda 0 512 0 512 512 1 deadline 128 128 2G
vda 0 512 0 512 512 1 128 128 0B
└─vda1 0 512 0 512 512 1 128 128 0B
Hay muchos otros accesos directos disponibles para mostrar características relacionadas con sus discos y particiones. Puede mostrar todas las columnas disponibles con la -O
bandera o personalizar los campos que se mostrarán especificando los nombres de las columnas con la -o
bandera. La -h
bandera se puede usar para listar las columnas disponibles:
lsblk -h
Output. . .
Available columns (for --output):
NAME device name
KNAME internal kernel device name
. . .
SUBSYSTEMS de-duplicated chain of subsystems
REV device revision
VENDOR device vendor
For more details see lsblk(8).
Trabajar con montajes del sistema de archivos
Antes de poder usar un disco nuevo, normalmente hay que particionarlo, formatearlo con un sistema de archivos y luego montar la unidad o las particiones. Particionar y formatear suele ser un proceso único. Puede encontrar más información sobre cómo particionar y formatear una unidad con Linux en ” Cómo particionar y formatear dispositivos de almacenamiento en Linux” .
El montaje es algo que puede realizar con más frecuencia. Al montar el sistema de archivos, este estará disponible para el servidor en el punto de montaje seleccionado. Un punto de montaje es un directorio desde el cual se puede acceder al nuevo sistema de archivos.
Dos comandos complementarios se utilizan principalmente para gestionar el montaje: mount
y umount
. Este mount
comando se utiliza para conectar un sistema de archivos al árbol de archivos actual. En un sistema Linux, se utiliza una única jerarquía de archivos unificada para todo el sistema, independientemente de cuántos dispositivos físicos lo compongan. El umount
comando (Nota: este es umount
, no unmount
) se utiliza para desmontar un sistema de archivos. Además, findmnt
es útil para recopilar información sobre el estado actual de los sistemas de archivos montados.
Usando el comando mount
La forma más sencilla de utilizarlo mount
es pasar un dispositivo o partición formateada y el punto de montaje donde se conectará:
sudo mount /dev/sda1 /mnt
El punto de montaje, el parámetro final que especifica dónde en la jerarquía de archivos debe adjuntarse el nuevo sistema de archivos, casi siempre debe ser un directorio vacío.
Normalmente, querrá seleccionar opciones más específicas al montar. Aunque mount
puede intentar adivinar el tipo de sistema de archivos, casi siempre es mejor pasarlo con la -t
opción. Para un sistema de archivos Ext4, esto sería:
sudo mount -t ext4 /dev/sda1 /mnt
Existen muchas otras opciones que influyen en el montaje del sistema de archivos. Existen opciones de montaje genéricas, que se pueden encontrar en la sección “OPCIONES DE MONTAJE INDEPENDIENTES DEL SISTEMA DE ARCHIVOS ” del manual de montaje .
Pase otras opciones con la -o
bandera. Por ejemplo, para montar una partición con las opciones predeterminadas (que significan rw,suid,dev,exec,auto,nouser,async
), puede pasar -o defaults
. Si necesita anular los permisos de lectura y escritura y montar como de solo lectura, puede añadir ro
una opción posterior, que anulará la rw
opción defaults
:
sudo mount -t ext4 -o defaults,ro /dev/sda1 /mnt
Para montar todos los sistemas de archivos descritos en el /etc/fstab
archivo, puede pasar la -a
opción:
sudo mount -a
Listado de opciones de montaje del sistema de archivos
Para mostrar las opciones de montaje utilizadas para un montaje específico, use el findmnt
comando. Por ejemplo, si visualizara el montaje de solo lectura del ejemplo anterior con findmnt
, se vería así:
findmnt /mnt
OutputTARGET SOURCE FSTYPE OPTIONS
/mnt /dev/sda1 ext4 ro,relatime,data=ordered
Esto puede ser útil si has estado experimentando con varias opciones y finalmente has encontrado un conjunto que te gusta. Puedes encontrar las opciones que usa findmnt
para saber qué es apropiado agregar al /etc/fstab
archivo para futuros montajes.
Desmontar un sistema de archivos
El umount
comando se usa para desmontar un sistema de archivos determinado. Nuevamente, esto umount
no es unmount
.
La forma general del comando es nombrar el punto de montaje o dispositivo de un sistema de archivos actualmente montado. Asegúrese de no utilizar ningún archivo en el punto de montaje ni de tener ninguna aplicación (incluida su shell actual) ejecutándose dentro de él:
cd ~
sudo umount /mnt
Generalmente no hay opciones para agregar al comportamiento de desmontaje predeterminado.
Conclusión
Aunque esta lista no es exhaustiva, estas utilidades deberían cubrir la mayor parte de lo que necesita para las tareas diarias de administración del sistema. Con el aprendizaje de algunas herramientas, podrá gestionar los dispositivos de almacenamiento en su servidor.