Introducción
La gestión de particiones y sistemas de archivos es un componente esencial en la administración de sistemas operativos como Red Hat Enterprise Linux (RHEL). Desde la configuración inicial del almacenamiento hasta la integración de dispositivos en el sistema de archivos, los administradores deben comprender cómo manejar particiones, crear y formatear sistemas de archivos, y gestionar puntos de montaje de manera eficiente. Este proceso asegura un uso óptimo del almacenamiento disponible, la flexibilidad en la asignación de recursos y la integridad de los datos.
Objetivos
Esta sección tiene como propósito:
- Explicar los conceptos básicos de particiones y sistemas de archivos, incluidos MBR, GPT, y LVM.
- Proveer instrucciones para crear y administrar particiones y formatearlas con sistemas de archivos adecuados como XFS o ext4.
- Detallar el proceso de montaje y desmontaje de sistemas de archivos, tanto manual como persistente mediante configuraciones en /etc/fstab.
- Describir herramientas y técnicas para buscar y localizar archivos dentro de sistemas de archivos montados.
Sistemas de archivos
Sistemas de Archivos en RHEL
Sistemas de Archivos Predeterminados y Compatibilidad
RHEL utiliza XFS como el sistema de archivos predeterminado para almacenamiento local, proporcionando alta escalabilidad y rendimiento. También admite otros sistemas de archivos como:
- ext4: Tradicionalmente usado para almacenamiento local.
- exFAT: Diseñado para medios extraíbles como discos USB, disponible desde RHEL 9.
- GFS2: Optimizado para clústeres de servidores empresariales, permitiendo acceso simultáneo desde varios nodos.
Concepto de Puntos de Montaje
En RHEL, un sistema de archivos debe montarse en un punto de montaje, que es un directorio vacío. Un punto de montaje difiere ligeramente de una letra de unidad de Microsoft Windows, donde cada sistema de archivos es una entidad separada. Los puntos de montaje permiten que varios dispositivos del sistema de archivos estén disponibles en una única estructura de árbol. Este punto de montaje es similar a las carpetas montadas en NTFS en Microsoft Windows.
Ejemplo práctico:
Montar un dispositivo en
/mnt/external-drivepermite acceder a sus archivos desde esa ruta.
Dispositivos de Bloque
Un dispositivo de bloque es un archivo que proporciona acceso de bajo nivel a dispositivos de almacenamiento. Un dispositivo de bloque se debe particionar de manera opcional y puede montarse un sistema de archivos que se creó antes del dispositivo. El directorio /dev almacena archivos de dispositivos de bloque, que RHEL crea automáticamente para todos los dispositivos. En RHEL 9, el primer disco duro SATA, SAS, SCSI o USB detectado se denomina dispositivo /dev/sda, el segundo es el dispositivo /dev/sdb, y así sucesivamente. Estos nombres representan el disco duro en su totalidad. Nomenclatura de dispositivos de bloque
| Tipo de dispositivo | Patrón de nomenclatura de dispositivos |
|---|---|
| Almacenamiento adjunto a SATA/SAS/USB (unidad SCSI) | /dev/sda,/dev/sdb,/dev/sdc,… |
virtio-blkalmacenamiento paravirtualizado (VM) |
/dev/vda,/dev/vdb,/dev/vdc,… |
virtio-scsialmacenamiento paravirtualizado (VM) |
/dev/sda,/dev/sdb,/dev/sdc,… |
| Almacenamiento adjunto a NVMe (SSD) | /dev/nvme0,/dev/nvme1,… |
| Almacenamiento SD/MMC/eMMC (tarjetas SD) | /dev/mmcblk0,/dev/mmcblk1,… |
Particiones del disco
Normalmente, el dispositivo de almacenamiento completo no se crea en un solo sistema de archivos. Para crear una partición, divida los dispositivos de almacenamiento en fragmentos más pequeños.
Con las particiones, puede compartimentar un disco; las diferentes particiones pueden formatearse con diferentes sistemas de archivos o usarse para otros fines. Por ejemplo, una partición puede contener directorios de inicio de un usuario mientras que otra partición puede contener registros y datos del sistema. Incluso cuando la partición del directorio de inicio se cargue con datos, la partición del sistema puede seguir teniendo espacio disponible.
Las particiones son dispositivos de bloque por derecho propio. Por ejemplo, en el primer almacenamiento adjunto a SATA, la primera partición es el disco /dev/sda1. La segunda partición del mismo almacenamiento es el disco /dev/sda2. La tercera partición en el tercer dispositivo de almacenamiento conectado a SATA es el disco /dev/sdc3, y así sucesivamente. Los dispositivos de almacenamiento paravirtualizados tienen un sistema de nomenclatura similar. Por ejemplo, en el primer almacenamiento, la primera partición es el disco /dev/vda1. La segunda partición en el segundo dispositivo de almacenamiento es el disco /dev/vdb2, y así sucesivamente. Entonces, las particiones dividen un dispositivo físico en unidades más pequeñas.
Ejemplo: * Primera partición del primer disco SATA:
/dev/sda1. * Segunda partición del segundo disco NVMe:/dev/nvme1n1p2.
Gestión de Volúmenes Lógicos (LVM)
LVM permite crear un sistema flexible para gestionar almacenamiento: Combina varios dispositivos de bloque en un grupo de volúmenes. Divide el grupo en volúmenes lógicos, funcionalmente equivalentes a particiones pero con mayor flexibilidad.
Ejemplo: * Grupo:
/dev/myvg. * Volumen lógico:/dev/myvg/mylv.
Comandos Clave para el Examen de Sistemas de Archivos
-
df: Muestra sistemas de archivos y uso de espacio.df -h -
du: Detalla uso de espacio en directorios específicos.du -h /usr/share -
ls -l /dev: Lista dispositivos de bloque disponibles.ls -l /dev/sda1
Montaje y Desmontaje de Sistemas de Archivos
Montaje Manual de Sistemas de Archivos
Para acceder al contenido de un sistema de archivos en un dispositivo de almacenamiento, se debe montar el dispositivo en un punto de montaje. El comando mount permite realizar el montaje manualmente. Montaje por nombre de archivo del dispositivo: Especifica el sistema de archivos en el dispositivo y el directorio como punto de montaje. mount /dev/vda4 /mnt/data Montaje por UUID: El UUID (Identificador Único Universal) es un identificador estable asociado al sistema de archivos. Usa el comando lsblk -fp para encontrar el UUID y luego montar el sistema: mount UUID="efd314d0-b56e-45db-bbb3-3f32ae98f652" /mnt/data Nota importante: Si el directorio del punto de montaje contiene archivos, estos quedan ocultos hasta desmontar el sistema de archivos. El montaje realizado con mount no persiste tras un reinicio. Usa /etc/fstab para habilitar el montaje automático.
Identificación de Dispositivos de Bloque
Usa lsblk para enumerar dispositivos de bloque conectados, sus particiones, tamaños y puntos de montaje: lsblk
Ejemplo de salida:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
vda 252:0 0 10G 0 disk
├─vda1 252:1 0 1M 0 part
├─vda2 252:2 0 200M 0 part /boot/efi
├─vda3 252:3 0 500M 0 part /boot
└─vda4 252:4 0 9.3G 0 part /
Desmontaje de Sistemas de Archivos
Antes de desconectar un dispositivo, debe desmontarse manualmente para garantizar la integridad de los datos. Usa el comando umount con el punto de montaje:
umount /mnt/data
Solución a errores de desmontaje: Si el comando umount falla porque el sistema de archivos está en uso: Usa el comando lsof para identificar procesos que acceden al sistema de archivos:
lsof /mnt/data
Finaliza los procesos o cambia el directorio de trabajo fuera del punto de montaje:
cd ~
umount /mnt/data
Montaje Automático de Dispositivos Extraíbles
En entornos gráficos, los sistemas detectan y montan automáticamente dispositivos extraíbles en /run/media/USERNAME/LABEL. Usa el comando umount para desconectar de manera segura estos dispositivos.
Búsqueda y Localización de Archivos en RHEL
Herramientas para Buscar Archivos RHEL incluye herramientas que permiten a los administradores localizar archivos utilizando diferentes criterios. Las dos principales son:
locate:
Busca rápidamente nombres o rutas de archivos utilizando un índice preconstruido almacenado en la base de datos mlocate.
Es rápido pero puede estar desactualizado si no se actualiza la base de datos. Usa updatedb para forzar una actualización inmediata de dicha base.
find:
Realiza búsquedas en tiempo real dentro de una jerarquía de sistemas de archivos.
Ofrece criterios avanzados como propiedad, permisos, tamaño o tiempos de modificación.
Uso del Comando locate
Localiza archivos rápidamente sin recorrer todo el sistema de archivos. Busca nombres o rutas que coincidan con una palabra clave: locate passwd
Ejemplo de salida:
/etc/passwd /etc/passwd- /usr/share/passwd
Opciones avanzadas: Ignorar mayúsculas/minúsculas: Usa -i para que no distinga entre letras mayúsculas y minúsculas:
locate -i messages
Limitar número de resultados: Usa -n para restringir la cantidad de resultados.
Ejemplo, limitando a 5:
locate -n 5 passwd
Uso del Comando find
Aunque más lento que locate, es preciso y permite filtrar por diversos criterios. Busca archivos con coincidencia exacta en el nombre:
find / -name sshd_config
Comodines para coincidencias parciales: Busca nombres con patrones específicos.
Ejemplo, archivos con extensión .txt:
find / -name '*.txt'
Nota: Los patrones deben colocarse entre comillas para evitar que el shell los interprete.
Búsqueda Basada en Propiedades del Archivo Por propietario:
Encuentra archivos pertenecientes a un usuario específico:
find /home -user developer
Por permisos: Busca archivos con permisos específicos utilizando valores octales o simbólicos:
find /home -perm 764
find /home -perm u=rwx,g=rw,o=r
Búsqueda Basada en el Tamaño del Archivo
Usa la opción -size para buscar archivos según su tamaño, con unidades específicas:
- Kilobytes (k)
- Megabytes (M)
- Gigabytes (G)
Ejemplo:
Archivos con tamaño exacto de 10 MB:
find / -size 10MArchivos mayores a 10 GB:
find / -size +10GArchivos menores a 10 KB:
find / -size -10k
Búsqueda Basada en Tiempos de Modificación
Usa -mmin para localizar archivos modificados en los últimos n minutos:
Exactamente hace 120 minutos: find / -mmin 120
Más de 200 minutos atrás: find / -mmin +200
Menos de 150 minutos atrás: find / -mmin -150
Búsqueda por Tipo de Archivo
Usa -type para limitar la búsqueda a tipos específicos:
Archivos regulares: find / -type f
Directorios: find / -type d
Enlaces simbólicos: find / -type l
Dispositivos de bloque: find /dev -type b
Conclusión
La comprensión y gestión efectiva de particiones y sistemas de archivos en RHEL permite a los administradores garantizar la estabilidad, seguridad y flexibilidad del entorno operativo. Desde las configuraciones iniciales hasta la búsqueda avanzada de archivos, estas habilidades aseguran un manejo óptimo del almacenamiento y una integración fluida de nuevos dispositivos en la infraestructura del sistema. Con este conocimiento, es posible construir sistemas confiables y adaptados a las necesidades específicas de cualquier entorno.