Mientras que en el mundo de los equipos de escritorio rara vez cambiamos nuestro disco duro, y eso se debe principalmente a fallas de hardware, en el mundo de los servidores no es raro que el entorno de almacenamiento subyacente cambie con el tiempo.
En un entorno SAN (red de área de almacenamiento), para alta disponibilidad, un servidor puede llegar a su almacenamiento a través de muchas rutas, en realidad distribuidas y reflejadas en múltiples discos en la red de almacenamiento. Si algunas rutas cambian, el servidor necesita identificar el "disco" nuevamente. Es por eso que se recomienda usar identificadores especiales establecidos en el dispositivo y montar por estos identificadores, no por el nombre del dispositivo que puede cambiar. En esta parte del tutorial de preparación para el examen RHCSA, agregaremos un nuevo disco a nuestra máquina de prueba y configuraremos el montaje por UUID (Universally Unique IDentifier) y por etiqueta.
Montaje del sistema de archivos por etiqueta.
Requisitos de software y convenciones de la línea de comandos de Linux Categoría | Requisitos, convenciones o versión de software utilizada |
Sistema | Red Hat Enterprise Linux 8.0 |
Software | util-linux 2.32.1 |
Otro | Acceso privilegiado a su sistema Linux como root o a través de sudo comando. |
Convenciones | # – requiere que los comandos de Linux dados se ejecuten con privilegios de root, ya sea directamente como usuario root o mediante el uso de sudo comando $ – requiere que los comandos de Linux dados se ejecuten como un usuario normal sin privilegios |
Introducción a la configuración
Nuestra máquina de prueba es una máquina virtual simple que ejecuta RHEL 8. El sistema operativo está instalado en /dev/sda, un disco duro virtual de 15 GB. Para tener un disco libre para usar, agregamos otro disco virtual a la máquina, que aparece como /dev/sdb con un tamaño de 2 GB. Particionamos el disco usando fdisk, creando una sola partición que ocupa todo el disco nuevo. Creamos un sistema de archivos ext4 encima de esa partición, usando mkfs.ext4
. Esta será nuestra configuración de demostración.
Cómo obtener el UUID de un dispositivo determinado
Para enumerar el UUID de los dispositivos presentes en nuestro sistema, abriremos una terminal y usaremos blkid
:
# blkid
/dev/sda1: UUID="eef3b378-5272-45f4-ab41-97eb48bda63f" TYPE="xfs" PARTUUID="3c939719-01"
/dev/sda2: UUID="rfezEa-GlgW-jWUX-Zixs-Ydw0-EsZS-nk3JDH" TYPE="LVM2_member" PARTUUID="3c939719-02"
/dev/sr0: UUID="2019-10-10-18-52-14-12" LABEL="VBox_GAs_6.0.14" TYPE="iso9660"
/dev/mapper/rhel-root: UUID="9ba9c1f7-40d7-4eb2-a66b-7b27905d8011" TYPE="xfs"
/dev/mapper/rhel-swap: UUID="c08948ec-2320-4155-92d5-2c9364ccb99b" TYPE="swap"
/dev/sdb: UUID="17c1210c-8a88-42d6-b394-03f491415d5c" TYPE="ext4"
El resultado en negrita indica nuestro nuevo disco y también el UUID que buscamos.
Cómo obtener y establecer la etiqueta de un dispositivo
Podemos imprimir la etiqueta de nuestro dispositivo con e2label
. En nuestro estado actual, la salida puede ser engañosa, porque hasta ahora no se ha establecido ninguna etiqueta para este dispositivo.
# e2label /dev/sdb
La línea vacía no indica error, sino que el atributo de la etiqueta aún no está configurado en este dispositivo. La misma utilidad es capaz de configurar la etiqueta. La sintaxis es e2label <devicename> <label>
:
# e2label /dev/sdb "small_disk"
Otra consulta mostrará el nuevo conjunto de etiquetas:
# e2label /dev/sdb
small_disk
Además, el blkid
La utilidad que usamos anteriormente también presentará la etiqueta recién configurada:
# blkid | grep sdb
/dev/sdb: LABEL="small_disk" UUID="17c1210c-8a88-42d6-b394-03f491415d5c" TYPE="ext4"
Cómo montar un dispositivo por UUID
Usar UUID para montar es la forma recomendada, por lo que en una instalación predeterminada de RHEL8, ya podemos encontrar un ejemplo de cómo hacerlo. Si no modificamos las opciones del disco en la instalación, lo más probable es que el UUID monte el dispositivo de arranque. La configuración para el montaje está en el /etc/fstab
archivo, que podemos imprimir para este ejemplo.
# cat /etc/fstab
#
# /etc/fstab
# Created by anaconda on Mon Oct 28 13:22:28 2019
#
# Accessible filesystems, by reference, are maintained under '/dev/disk/'.
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info.
#
# After editing this file, run 'systemctl daemon-reload' to update systemd
# units generated from this file.
#
/dev/mapper/rhel-root / xfs defaults 0 0
UUID=eef3b378-5272-45f4-ab41-97eb48bda63f /boot xfs defaults 0 0
/dev/mapper/rhel-swap swap swap defaults 0 0
Del resultado anterior podemos ver la sintaxis que necesitamos usar para montar nuestro disco por UUID. Usando un editor de texto, podemos agregar la siguiente nueva entrada fstab al final del archivo:
UUID=17c1210c-8a88-42d6-b394-03f491415d5c /mnt/new_disk ext4 defaults 0 0
Tenga en cuenta que el ejemplo anterior utiliza el mismo UUID que enumeramos con blkid
en la sección anterior. Será diferente en cualquier otro sistema.
También necesitaremos que exista el punto de montaje, por lo que crearemos el directorio que mencionamos en la entrada anterior:
# mkdir /mnt/new_disk
Con la ruta para montar, la forma de montar y el sistema de archivos para montar listos, todo lo que tenemos que hacer es mount
el dispositivo:
# mount /mnt/new_disk/
En el montaje exitoso, podemos encontrar nuestro sistema de archivos ext4 de 2 GB en el punto de montaje especificado. El mount
El comando sin argumentos listará todos los sistemas de archivos montados, y podemos usar grep para encontrar la línea que nos interesa particularmente.
# mount | grep sdb
/dev/sdb on /mnt/new_disk type ext4 (rw,relatime,seclabel)
También podemos usar el df
utilidad para verificar el sistema de archivos montado:
# df -h /mnt/new_disk/
Filesystem Size Used Avail Use% Mounted on
/dev/sdb 2.0G 6.0M 1.8G 1% /mnt/new_disk
Montar el sistema de archivos usando UUID como identificador en /etc/fstab
Finalmente, podemos desmontar el sistema de archivos para prepararnos para el siguiente paso:
# umount /mnt/new_disk
Cómo montar el dispositivo por etiqueta
Montar el sistema de archivos por etiqueta es prácticamente lo mismo. Con la etiqueta ya configurada, podemos hacer referencia a ella en /etc/fstab
. Si realiza este paso con el mismo dispositivo, recuerde eliminar la referencia UUID agregada en el paso anterior antes de agregar otra que use la etiqueta:
LABEL=small_disk /mnt/new_disk ext4 defaults 0 0
Podemos montar el dispositivo de la misma manera que con UUID, especificando el punto de montaje:
# mount /mnt/new_disk/
Esto es factible gracias a fstab
entrada que el mount
usos del comando. También podemos montar por etiqueta directamente usando el indicador -L:
# mount -L small_disk /mnt/new_disk
Usamos el mismo disco con la opción UUID y etiqueta, por lo que su contenido será el mismo. Podemos escribir datos en él, desmontarlo y luego volver a montarlo usando el otro método, los datos seguirán siendo los mismos. Tenga en cuenta que este sería el caso si el disco fuera entregado a otra máquina (que ya puede tener un /dev/sdb
dispositivo).
Ejercicios
- Cree un disco etiquetado, agregue algunos datos de prueba, luego retire el disco del sistema y agréguelo a otra máquina. ¿Puede la nueva máquina ver los datos en el disco?
- Cree un punto de montaje UUID, luego desmonte el sistema de archivos, vuelva a crearlo y verifique el UUID. ¿Puedes usar la misma entrada fstab para el nuevo sistema de archivos?
- Cree un punto de montaje de etiqueta, luego desmonte el sistema de archivos, vuelva a crearlo y etiquételo con el mismo nombre. ¿Sigue siendo válida la entrada fstab basada en etiquetas?
- Intente etiquetar dos discos diferentes con el mismo nombre. ¿Puedes montarlos?