Ein ZFS-Dateisystem wird automatisch eingehängt, wenn es erstellt wird. In diesem Abschnitt wird beschrieben, wie Sie das Verhalten eines Einhängepunkts für ein Dateisystem bestimmen können.
Sie können den Standard-Einhängepunkt für ein Pool-Dataset bei dessen Erstellung auch mithilfe der Option m von -zpool create setzen. Weitere Informationen zum Erstellen von Pools finden Sie unter Erstellen eines ZFS-Speicher-Pools.
Alle ZFS-Dateisysteme werden beim Systemstart von ZFS mithilfe des SMF-Dienstes (Service Management Facility) svc://system/filesystem/local eingehängt. Dateisysteme werden unter /path eingehängt, wobei path den Namen des Dateisystems bezeichnet.
Sie können den Standard-Einhängepunkt überschreiben, indem Sie den Befehl zfs set verwenden, um die Eigenschaft mountpoint auf einen spezifischen Pfad zu setzen. ZFS erstellt den angegebenen Einhängepunkt bei Bedarf automatisch und hängt das entsprechende Dateisystem automatisch ein, wenn der Befehl zfs mount -a aufgerufen wird, ohne dass Sie dafür die Datei /etc/vfstab ändern müssen.
Die Eigenschaft mountpoint wird vererbt. Wenn die Eigenschaft mountpoint von pool/home beispielsweise auf /export/stuff gesetzt ist, erbt pool/home/user für seinen Eigenschaftswert mountpoint den Wert /export/stuff/user.
Um zu verhindern, dass ein Dateisystem eingehängt wird, setzen Sie die Eigenschaft mountpoint auf none. Außerdem kann mit der Eigenschaft canmount bestimmt werden, ob ein Dateisystem eingehängt werden kann. Weitere Informationen zur Eigenschaft canmount finden Sie unter Die Eigenschaft canmount.
Dateisysteme können auch explizit mithilfe von Legacy-Einhängesystemen verwaltet werden, indem zfs set verwendet wird, um die Eigenschaft mountpoint auf legacy zu setzen. Dadurch wird verhindert, dass ZFS ein Dateisystem automatisch einhängt und verwaltet. Stattdessen müssen Sie Legacy-Dienstprogramme wie die Befehle mount und umount und die Datei /etc/vfstab verwenden. Weitere Informationen zu Legacy-Einhängepunkten finden Sie unter Legacy-Einhängepunkte.
Wenn Sie die Eigenschaft mountpoint von legacy oder none auf einen bestimmten Pfad umsetzen, hängt ZFS das betreffende Dateisystem automatisch ein.
Wenn ZFS ein Dateisystem verwaltet, dieses aber ausgehängt ist und die Eigenschaft mountpoint geändert wird, bleibt das Dateisystem weiterhin ausgehängt.
Datasets, deren Eigenschaft mountpoint nicht auf legacy gesetzt ist, werden von ZFS verwaltet. Im folgenden Beispiel wird ein Dataset erstellt, dessen Einhängepunkt automatisch von ZFS verwaltet wird:
# zfs create pool/filesystem # zfs get mountpoint pool/filesystem NAME PROPERTY VALUE SOURCE pool/filesystem mountpoint /pool/filesystem default # zfs get mounted pool/filesystem NAME PROPERTY VALUE SOURCE pool/filesystem mounted yes - |
Sie können die Eigenschaft mountpoint auch explizit setzen (siehe folgendes Beispiel):
# zfs set mountpoint=/mnt pool/filesystem # zfs get mountpoint pool/filesystem NAME PROPERTY VALUE SOURCE pool/filesystem mountpoint /mnt local # zfs get mounted pool/filesystem NAME PROPERTY VALUE SOURCE pool/filesystem mounted yes - |
Beim Ändern der Eigenschaft mountpoint wird das betreffende Dateisystem automatisch aus dem alten Einhängepunkt ausgehängt und in den neuen Einhängepunkt eingehängt. Einhängepunktverzeichnisse werden je nach Bedarf erstellt. Wenn ZFS ein Dateisystem nicht aushängen kann, weil es noch aktiv ist, wird ein Fehler gemeldet, und das Aushängen muss manuell erzwungen werden.
Sie können ZFS-Dateisysteme mit Legacy-Dienstprogrammen verwalten, indem Sie die Eigenschaft mountpoint auf legacy setzen. Legacy-Dateisysteme müssen mithilfe der Befehle mount und umount sowie der Datei /etc/vfstab verwaltet werden. ZFS hängt Legacy-Dateisysteme beim Systemstart nicht automatisch ein, und die ZFS-Befehle mount und umount funktionieren mit Datasets dieses Typs nicht. Die folgenden Beispiele zeigen die Erstellung und Verwaltung eines ZFS-Datasets im Legacy-Modus:
# zfs set mountpoint=legacy tank/home/eschrock # mount -F zfs tank/home/eschrock /mnt |
Damit Legacy-Dateisysteme beim Systemstart automatisch eingehängt werden, müssen Sie zur Datei /etc/vfstab die entsprechenden Einträge hinzufügen. Das folgende Beispiel zeigt, wie der Eintrag in der Datei /etc/vfstab aussehen kann:
#device device mount FS fsck mount mount #to mount to fsck point type pass at boot options # tank/home/eschrock - /mnt zfs - yes - |
Die Einträge device to fsck und fsck pass werden auf - gesetzt, weil der Befehl fsck nicht auf ZFS-Dateisysteme anwendbar ist. Weitere Informationen zur ZFS-Datenintegrität finden Sie unter Transaktionale Semantik.