En este procedimiento, monta un conjunto de datos ZFS con permisos de lectura y escritura en una zona con etiquetas. Ya que todos los comandos se ejecutan en la zona global, el administrador de la zona global controla la agregación de conjuntos de datos ZFS a las zonas con etiquetas.
Como mínimo, la zona con etiquetas debe estar en el estado ready para compartir un conjunto de datos. La zona puede estar en el estado running.
Antes de empezar
Para configurar la zona con el conjunto de datos, primero debe detener la zona. Debe estar con el rol de usuario root en la zona global.
# zfs create datasetdir/subdir
El nombre del conjunto de datos puede incluir un directorio, como zone/data.
# zoneadm -z labeled-zone-name halt
# zfs set mountpoint=legacy datasetdir/subdir
La configuración de la propiedad ZFS mountpoint establece la etiqueta del punto de montaje cuando el punto de montaje corresponde a una zona con etiquetas.
# zfs set sharenfs=on datasetdir/subdir
# zonecfg -z labeled-zone-name # zonecfg:labeled-zone-name> add fs # zonecfg:labeled-zone-name:dataset> set dir=/subdir # zonecfg:labeled-zone-name:dataset> set special=datasetdir/subdir # zonecfg:labeled-zone-name:dataset> set type=zfs # zonecfg:labeled-zone-name:dataset> end # zonecfg:labeled-zone-name> exit
Si se agrega el conjunto de datos como un sistema de archivos, el conjunto de datos se monta en /data, en la zona. Este paso garantiza que el conjunto de datos no se monte antes de que se inicie la zona.
# zoneadm -z labeled-zone-name boot
Cuando se inicia la zona, se monta el conjunto de datos automáticamente como punto de montaje de lectura y escritura en la zona labeled-zone-name con la etiqueta de la zona labeled-zone-name.
En este ejemplo, el administrador agrega un conjunto de datos de ZFS a la zona needtoknow y, luego, lo comparte. El conjunto de datos, zone/data, se encuentra asignado al punto de montaje /mnt. Los usuarios de la zona restricted pueden ver el conjunto de datos.
En primer lugar, el administrador detiene la zona.
# zoneadm -z needtoknow halt
Dado que el conjunto de datos se encuentra asignado a un punto de montaje diferente, el administrador elimina la asignación anterior y, a continuación, establece el nuevo punto de montaje.
# zfs set zoned=off zone/data # zfs set mountpoint=legacy zone/data
Luego, el administrador comparte el conjunto de datos.
# zfs set sharenfs=on zone/data
A continuación, en la interfaz interactiva zonecfg, el administrador agrega explícitamente el conjunto de datos a la zona needtoknow.
# zonecfg -z needtoknow # zonecfg:needtoknow> add fs # zonecfg:needtoknow:dataset> set dir=/data # zonecfg:needtoknow:dataset> set special=zone/data # zonecfg:needtoknow:dataset> set type=zfs # zonecfg:needtoknow:dataset> end # zonecfg:needtoknow> exit
Luego, el administrador inicia la zona needtoknow.
# zoneadm -z needtoknow boot
Finalmente se podrá acceder al conjunto de datos.
Los usuarios de la zona restricted, que domina la zona needtoknow, pueden ver el conjunto de datos montado. Para ello, deben cambiar al directorio /data. Deben usar la ruta completa para acceder al conjunto de datos montado desde la perspectiva de la zona global. En este ejemplo, machine1 es el nombre de host del sistema que incluye la zona con etiquetas. El administrador asignó este nombre de host a una dirección IP no compartida.
# cd /net/machine1/zone/needtoknow/root/data
Errores más frecuentes
Si el intento de acceder al conjunto de datos desde la etiqueta superior devuelve los mensajes de error not found o No such file or directory, el administrador debe reiniciar el servicio del montador automático mediante la ejecución del comando svcadm restart autofs.