¿Por qué cambia la letra de la unidad de disco después de reiniciar el ECS?
Síntomas
Para un ECS de Linux, la letra de unidad puede cambiar después de que un disco de EVS se desconecta y luego se conecta de nuevo, o después de que un disco de EVS se desconecta y luego el ECS se reinicia.
Causa raíz
Cuando un ECS de Linux tiene varios discos adjuntos, asigne letras de unidad en la secuencia de adjuntos y nombre los discos como /dev/vda1, /dev/vdb1 y /dev/vdc1, etc.
Después de desconectar un disco y luego conectar de nuevo, o después de desconectar un disco y reiniciar el ECS, la letra de unidad puede cambiar.
Por ejemplo, un ECS tiene tres discos conectados: /dev/vda1, /dev/vdb1 y el /dev/vdc1. Los parámetros de montaje de /etc/fstab son los siguientes:
cat /etc/fstab
UUID=b9a07b7b-9322-4e05-ab9b-14b8050bdc8a / ext4 defaults 0 1 /dev/vdb1 /data1 ext4 defaults 0 0 /dev/vdc1 /data2 ext4 defaults 0 0
Después de que /dev/vdb1 se separa y ECS se reinicia, /dev/vdc1 se convierte en /dev/vdb1 y se monta en /data. En tal caso, no se monta ningún disco en el /data2.
El cambio de las letras de unidad puede afectar al funcionamiento de las aplicaciones. Para resolver este problema, se recomienda utilizar los identificadores únicos universalmente (UUID) para reemplazar a /dev/vdx porque un UUID identifica de forma única una partición de disco en el SO de Linux.
Solución
- Inicie sesión en el ECS.
- Ejecute el siguiente comando para obtener el UUID de partición:
En este ejemplo, ejecute el siguiente comando para obtener el UUID de la partición /dev/vdb1:
blkid /dev/vdb1
La información que aparecerá en pantalla será similar a la información siguiente:
[root@ecs-test-0001 ~]# blkid /dev/vdb1 /dev/vdb1: UUID="b9a07b7b-9322-4e05-ab9b-14b8050cd8cc" TYPE="ext4"
Se muestra el UUID de la partición /dev/vdb1.
- Ejecute el siguiente comando para abrir el archivo fstab con el editor vi:
vi /etc/fstab
- Pulse i para entrar en el modo de edición.
- Mueva el cursor hasta el final del archivo y pulse Enter. A continuación, agregue la siguiente información:
UUID=b9a07b7b-9322-4e05-ab9b-14b8050cd8cc /data1 ext4 defaults 0 0
Los parámetros se definen de la siguiente manera:
- UUID=b9a07b7b-9322-4e05-ab9b-14b8050cd8cc: UUID of a disk partition.
- /data1: directorio en el que se monta la partición. Puede ejecutar df -TH para consultar el directorio.
- ext4: Formato de sistema de archivos de la partición. Puede ejecutar df -TH para consultar el formato.
- defaults: opción de montaje de particiones. Normalmente, este parámetro se establece en defaults.
- 0 (el primero): si se debe usar la copia de respaldo de volcado de Linux.
- 0: la copia de respaldo de volcado de Linux no se utiliza. Normalmente, la copia de respaldo de volcado no se utiliza, y puede establecer este parámetro en 0.
- 1: se utiliza la copia de respaldo de volcado de Linux.
- 0 (el segundo): opción fsck, es decir, si usar fsck para comprobar los discos durante el inicio.
- 0: no se utiliza fsck.
- Si el punto de montaje es la partición raíz (/), este parámetro debe establecerse en 1.
Cuando este parámetro se establece en 1 para la partición raíz, este parámetro para otras particiones debe comenzar con 2 para que el sistema compruebe las particiones en el orden ascendente de los valores.
- Repita los pasos 2 a 5 para reemplazar el UUID de /dev/vdc1.
- Ejecute de nuevo el siguiente comando para comprobar los parámetros de montaje en disco:
Se muestra la siguiente información:
UUID=b9a07b7b-9322-4e05-ab9b-14b8050bdc8a / ext4 defaults 0 1 UUID=b9a07b7b-9322-4e05-ab9b-14b8050cd8cc /data1 ext4 defaults 0 0 UUID=b9a07b7b-9322-4e05-ab9b-14b8050ab6bb /data2 ext4 defaults 0 0