El problema
En CentOS/RHEL 7, los volúmenes del sistema de archivos no se montan en orden según las entradas de /etc/fstab.
La solución
A diferencia de CentOS/RHEL 6 y versiones anteriores, en CentOS/RHEL 7 el proceso de arranque es más rápido. Debido a la naturaleza paralela del inicio del proceso, las órdenes de inicio de las unidades objetivo específicas no son deterministas. Todos los sistemas de archivos son una unidad systemd, por lo que su orden de montaje ya no es el de la entrada /etc/fstab.
Los sistemas de archivos son "unidad del sistema " escribe. Más concretamente son una unidad de tipo “montar “. Cuando los nombres de los sistemas de archivos se proporcionan en /etc/fstab, el sistema convertirá estas entradas en tipos de unidades dinámicas de "montaje".
Montar sistemas de archivos en orden
Para montar sistemas de archivos en orden, cree la unidad de montaje y colóquelos en /etc/systemd/system/ . Los tipos de unidades de montaje creadas dinámicamente se encuentran en /run/systemd/generator/ ubicación. Copie los archivos de la unidad en el directorio /run/systemd/generator/ para usarlos como plantilla para los estáticos. Después de crear el archivo de la unidad de montaje, copie el archivo en la ubicación /etc/systemd/system/. A continuación se muestran algunos ejemplos de configuración del orden de montaje en los sistemas CentOS/RHEL 7:
Nombre de archivo:/etc/systemd/system/test-data1.mount
# cat /etc/systemd/system/test-data1.mount [Unit] Description=My test mount Requires=boot.mount tmp.mount After=boot.mount tmp.mount [Mount] What=/dev/datavg/data1lv Where=/test/data1 Type=xfs [Install] WantedBy=multi-user.target
El mensaje "Requiere ” significa que este sistema de archivos no se montará a menos que existan los sistemas de archivos /boot y /tmp. El “después ” significa que el sistema de archivos /test/data1 solo se montará después de montar los sistemas de archivos /boot y /tmp.
Ahora mire el /test/data1/data2 archivo de unidad del sistema de archivos.
Nombre de archivo:/etc/systemd/system/test-data1-data2.mount
# cat /etc/systemd/system/test-data1-data2.mount [Unit] Description=My test mount 2 [Mount] What=/dev/datavg/data2lv Where=/test/data1/data2 Type=xfs [Install] WantedBy=multi-user.target
Consulte systemd.mount página man.
# man systemd.mount "If a mount point is beneath another mount point in the file system hierarchy, a dependency between both units is created automatically."
La unidad test-data1.mount se configura y monta primero, la unidad test-data1-data2.mount siempre se montará después. Aunque el orden de /etc/fstab se considera aquí en la secuencia de arranque. El comando manual "montar" lo considera como los pasos anteriores.