4.12. Nombres de rutas dependientes del contexto y montajes enlazados
Los sistemas de archivos GFS2 no ofrecen soporte para Nombres de rutas dependientes del contexto (CDPN), los cuales permiten crear enlaces simbólicos que apuntan a directorios o archivos de destinos variables. Para obtener esta funcionalidad en GFS2, puede utilizar la opción
bind
del comando mount
.
La opción
bind
del comando mount
le permite remontar parte de la jerarquía de archivos en una ubicación diferente, mientras que permanece 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 /root/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 si 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
Esta misma funcionalidad se puede lograr al crear un directorio vacío
/bin
. Luego, mediante un script o una entrada en el archivo /etc/fstab
, monte cada uno de los directorios de arquitectura individuales en el directorio /bin
con el comando mount -bind
. Por ejemplo, puede utilizar el siguiente comando como una línea 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 con cualquier criterio (como el valor de
%fill
para el sistema de archivos). Los nombres de rutas dependientes del contexto son más limitados en lo que pueden abarcar. Observe, sin embargo, que tendrá que escribir sus propios scripts para realizar el montaje según el criterio, como por ejemplo, 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.