3.11. Nombres de rutas dependientes del contexto y montajes enlazados

El sistema de archivos GFS2 no proporciona soporte para nombres de rutas dependientes del contexto (CDPN), el cual permite crear enlaces simbólicos que apuntan a directorio o archivos de destino variable. Para obtener esta funcionalidad en GFS2, puede utilizar la opción bind del comando mount.
La opción bind del comando mount permite remontar partes de la jerarquía de archivos en una ubicación diferente mientras permanecen también disponible en la ubicación original. El formato de este comando es el siguiente.
mount --bind olddir newdir
Después de ejecutar este comando, el contenido del directorio olddir estará disponible en dos ubicaciones olddir y newdir. Puede también usar esta opción para que un archivo esté disponible en dos lugares diferentes:
Por ejemplo, después de ejecutar los siguientes comandos, el contenido de /root/tmp tendrá el mismo contenido que el directorio /var/log anteriormente montado.
[root@menscryfa ~]# cd ~root
[root@menscryfa ~]# mkdir ./tmp
[root@menscryfa ~]# mount --bind /var/log /tmp
Alternativamente, puede utilizar una entrada en el archivo /etc/fstab para lograr el mismo resultado durante el tiempo de montajes. La siguiente entrada de /etc/fstab hará que el contenido de /root/tmp sea igual que el contenido de /var/log.
/var/log                /root/tmp               none    bind            0 0
Después de montar el sistema de archivos, puede utilizar el comando mount para ver que el sistema de archivos ha sido montado, como en el siguiente ejemplo.
[root@menscryfa ~]# mount | grep /tmp
/var/log on /root/tmp type none (rw,bind)
Con un sistema de archivos que soporta el nombre de rutas dependiente del contexto, usted podría tener que definir el directorio /bin como un nombre de ruta dependiente del contexto que resuelve en una de las siguientes rutas, dependiendo de la arquitectura del sistema.
/usr/i386-bin
/usr/x86_64-bin
/usr/ppc64-bin
Puede lograr la misma funcionalidad creando un directorio vacío /bin. Luego, con un script o una entrada en el archivo /etc/fstab, puede montar cada uno de los directorios dependiendo de la arquitectura en el directorio /bin con el comando mount -bind. Por ejemplo, puede utilizar el siguiente comando en un script.
mount --bind /usr/i386-bin /bin
Alternativamente, puede utilizar la siguiente entrada en el archivo /etc/fstab.
/usr/1386-bin             /bin               none    bind            0 0
Un montaje enlazado puede proporcionar mayor flexibilidad que un nombre de ruta dependiente del contexto, ya que puede utilizar esta funcionalidad para montar diferentes directorios de acuerdo a cualquier criterio (como el calor de %fill para el sistema de archivos). Los nombres de rutas dependientes del contexto son más limitados en lo que pueden rodear. Observe, sin embargo, que tendrá que escribir sus propios scripts para realizar el montaje de acuerdo a criterios como el valor de %fill.

Aviso

Cuando monta un sistema de archivos con la opción bind y el sistema de archivo original fue montado con rw, el nuevo sistema de archivos será montado como rw incluso si usted pasa la opción ro; la opción ro es ignorada silenciosamente. En este caso, el nuevo sistema de archivos podría ser marcado como ro en el directorio /proc/mounts, lo cual es confuso.