JavaScript is required to for searching.
Navigationslinks ´┐Żberspringen
Druckansicht beenden
Oracle Solaris ZFS-Administrationshandbuch
search filter icon
search icon

Dokument-Informationen

Vorwort

1.  Oracle Solaris ZFS-Dateisystem (Einführung)

2.  Erste Schritte mit Oracle Solaris ZFS

3.  Unterschiede zwischen Oracle Solaris ZFS und herkömmlichen Dateisystemen

4.  Verwalten von Oracle Solaris ZFS-Speicher-Pools

5.  Installieren und Booten eines Oracle Solaris ZFS-Root-Dateisystems

6.  Verwalten von Oracle Solaris ZFS-Dateisystemen

Verwalten von ZFS-Dateisystemen (Übersicht)

Erstellen, Entfernen und Umbenennen von ZFS-Dateisystemen

Erstellen eines ZFS-Dateisystems

Löschen eines ZFS-Dateisystems

Umbenennen eines ZFS-Dateisystems

ZFS-Eigenschaften

Schreibgeschützte native ZFS-Eigenschaften

Die Eigenschaft used

Konfigurierbare native ZFS-Eigenschaften

Die Eigenschaft canmount

Die Eigenschaft recordsize

Die Eigenschaft volsize

Benutzerdefinierte ZFS-Eigenschaften

Abfragen von ZFS-Dateisysteminformationen

Auflisten grundlegender ZFS-Informationen

Erstellen komplexer ZFS-Abfragen

Verwalten von ZFS-Eigenschaften

Setzen von ZFS-Eigenschaften

Vererben von ZFS-Eigenschaften

Abfragen von ZFS-Eigenschaften

Abfragen von ZFS-Eigenschaften für Skripten

Einhängen und Freigeben von ZFS-Dateisystemen

Verwalten von ZFS-Einhängepunkten

Automatische Einhängepunkte

Legacy-Einhängepunkte

Einhängen von ZFS-Dateisystemen

Verwenden temporärer Einhängepunkte

Aushängen von ZFS-Dateisystemen

Freigeben und Sperren von ZFS-Dateisystemen

Einstellen der Freigabesemantik

Sperren von ZFS-Dateisystemen für den Netzwerkzugriff

Freigeben von ZFS-Dateisystemen für den Netzwerkzugriff

Freigabeverhalten bei Legacy-Dateisystemen

Einstellen von ZFS-Kontingenten und -Reservierungen

Setzen von Kontingenten für ZFS-Dateisysteme

Einrichten von Benutzer- und Gruppenkontingenten auf einem ZFS-Dateisystem

Setzen von Reservierungen für ZFS-Dateisysteme

Aktualisieren von ZFS-Dateisystemen

7.  Arbeiten mit Oracle Solaris ZFS-Snapshots und -Klonen

8.  Schützen von Oracle Solaris ZFS-Dateien mit Zugriffskontrolllisten und Attributen

9.  Delegierte Oracle Solaris ZFS-Administration

10.  Fortgeschrittene Oracle Solaris ZFS-Themen

11.  Problembehebung und Pool-Wiederherstellung in Oracle Solaris ZFS

A.  Oracle Solaris ZFS-Versionsbeschreibungen

Index

ZFS-Eigenschaften

Mithilfe von Eigenschaften kann das Verhalten von Dateisystemen, Volumes, Schnappschüssen und Klonen gesteuert werden Sofern nicht anders angegeben, gelten die in diesem Abschnitt beschriebenen Eigenschaften für alle Dataset-Typen.

Eigenschaften werden in zwei Typen (native und benutzerdefinierte Eigenschaften) eingeteilt. Native Eigenschaften exportieren interne Statistikinformationen und steuern das Systemverhalten von ZFS-Dateisystemen. Darüber hinaus können native Eigenschaften konfigurierbar oder schreibgeschützt sein. Benutzerdefinierte Eigenschaften wirken sich nicht auf das Verhalten von ZFS-Dateisystemen aus, können jedoch zum Versehen von Datasets mit Informationen, die für Ihre lokalen Gegebenheiten wichtig sind, verwendet werden. Weitere Informationen zu benutzerdefinierten Eigenschaften finden Sie unter Benutzerdefinierte ZFS-Eigenschaften.

Die meisten konfigurierbaren Eigenschaften sind vererbbar. Vererbbare Eigenschaften werden von einem übergeordneten Dataset an alle seine untergeordneten Datasets weitergegeben.

Alle vererbbaren Eigenschaften haben eine Quelle, die angibt, wie eine Eigenschaft erhalten wurde. Die Eigenschaftsquelle kann die folgenden Werte besitzen:

local

Dieser Wert zeigt an, dass die Eigenschaft mithilfe des Befehls zfs set (siehe Setzen von ZFS-Eigenschaften) explizit für das Dataset festgelegt wurde.

inherited from Dataset-Name

Dieser Wert zeigt an, dass die Eigenschaft von einem übergeordneten Objekt geerbt wurde.

default

Dieser Wert zeigt an, dass der Wert der betreffenden Eigenschaft weder geerbt noch lokal gesetzt wurde. Diese Quelle resultiert daraus, dass kein übergeordnetes Objekt eine Eigenschaft aufweist, die mit source local definiert ist.

In der folgenden Tabelle sind schreibgeschützte und konfigurierbare native Eigenschaften von ZFS-Dateisystemen aufgeführt. Schreibgeschützte Eigenschaften sind entsprechend gekennzeichnet. Alle anderen in dieser Tabelle aufgeführten nativen Eigenschaften sind konfigurierbar. Weitere Informationen zu benutzerdefinierten Eigenschaften finden Sie unter Benutzerdefinierte ZFS-Eigenschaften.

Tabelle 6-1 Beschreibungen nativer ZFS-Eigenschaften

Eigenschaft
Typ
Standardwert
Beschreibung
aclinherit
Zeichenkette
secure
Legt fest, wie Einträge in Zugriffskontrolllisten beim Erstellen von Dateien und Verzeichnissen vererbt werden. Werte: discard, noallow, secure und passthrough. Eine Beschreibung dieser Werte finden Sie unter Eigenschaften von Zugriffskontrolllisten (aclinherit).
atime
Boolesch
on
Legt fest, ob beim Lesen von Dateien die Dateizugriffszeit aktualisiert wird. Durch Deaktivierung dieser Eigenschaft wird vermieden, dass während des Lesens von Dateien Datenverkehr entsteht, der aus Schreibvorgängen resultiert. Dadurch kann die Leistung erheblich verbessert werden. E-Mail-Programme und ähnliche Dienstprogramme können allerdings in ihrer Funktion beeinträchtigt werden.
available
Zahl
entf.
Diese schreibgeschützte Eigenschaft gibt die für ein Dataset und alle seine untergeordneten Objekte verfügbare Festplattenkapazität an. Dabei wird angenommen, dass im Pool keine Aktivität vorliegt. Da Festplattenkapazität innerhalb eines Pools gemeinsam genutzt wird, kann die verfügbare Kapazität durch verschiedene Faktoren wie z. B. physische Speicherkapazität des Pools, Kontingente, Reservierungen oder andere im Pool befindliche Datasets beschränkt werden.

Die Abkürzung der Eigenschaft lautet avail.

Weitere Informationen zur Berechnung von Festplattenkapazität finden Sie unter Berechnung von ZFS-Festplattenkapazität.

canmount
Boolesch
on
Legt fest, ob ein Dateisystem mit dem Befehl zfs mount eingehängt werden kann. Diese Eigenschaft ist für jedes Dateisystem einstellbar und kann nicht vererbt werden. Durch Setzen dieser Eigenschaft auf off kann jedoch an untergeordnete Dateisysteme ein Einhängepunkt vererbt werden. Die Dateisysteme selbst werden jedoch nicht eingehängt.

Wenn die Option noauto gesetzt ist, kann ein Dataset nur explizit ein- oder ausgehängt werden. Das Dataset wird weder beim Erstellen oder Importieren automatisch noch mit dem Befehl zfs mount- a eingehängt oder mit dem Befehl zfs unmount-a ausgehängt.

Weitere Informationen finden Sie unter Die Eigenschaft canmount.

checksum
Zeichenkette
on
Aktiviert/deaktiviert die Prüfsumme zur Validierung der Datenintegrität. Der Standardwert ist on. Dadurch wird automatisch ein geeigneter Algorithmus (gegenwärtig fletcher4) gesetzt. Werte: on, off, fletcher2 , fletcher4 und sha256. Der Wert off deaktiviert die Integritätsprüfung von Benutzerdaten. Der Wert off wird nicht empfohlen.
compression
Zeichenkette
off
Aktiviert oder deaktiviert die Komprimierung für ein Dataset. Werte: on, off, lzjb, gzip und gzip- N. Derzeit hat das Setzen der Eigenschaft auf lzjb, gzip oder gzip- N dieselbe Wirkung wie die Einstellung auf on. Durch Aktivieren der Komprimierung an einem Dateisystem mit bereits vorhandenen Daten werden nur neu hinzugekommene Daten komprimiert. Vorhandene Daten bleiben unkomprimiert.

Die Abkürzung der Eigenschaft lautet compress

compressratio
Zahl
entf.
Schreibgeschützte Eigenschaft, die das für das betreffende Dataset erreichte Komprimierungsverhältnis als Faktor ausdrückt. Die Komprimierung kann durch Ausführen von zfs set compression=on dataset aktiviert werden.

Der Wert wird aus der logischen Kapazität aller Dateien und der Kapazität der entsprechend referenzierten physischen Daten berechnet. Explizite Speicherplatzeinsparungen durch die Eigenschaft compression sind in diesem Wert enthalten.

copies
Zahl
1
Legt die Anzahl der Kopien von Benutzerdaten pro Dateisystem fest. Verfügbare Werte sind 1, 2 oder 3. Diese Kopien werden zusätzlich zu etwaigen Redundanzfunktionen auf Pool-Ebene angelegt. Die von zusätzlichen Kopien beanspruchte Festplattenkapazität wird auf die entsprechende Datei bzw. das Dataset angerechnet und zählt für Kontingente und Reservierungen. Darüber hinaus wird die Eigenschaft used entsprechend aktualisiert, wenn das Erstellen mehrerer Kopien aktiviert wurde. Sie sollten diese Eigenschaft beim Erstellen des Dateisystems setzen, da sich das Ändern dieser Eigenschaft bei einem bereits vorhandenen Dateisystem nur auf neu geschriebene Daten auswirkt.
creation
Zeichenkette
entf.
Schreibgeschützte Eigenschaft, die angibt, wann ein Dataset erstellt wurde (Datum/Uhrzeit).
devices
Boolesch
on
Legt fest, ob Gerätedateien in einem Dateisystem geöffnet werden können.
exec
Boolesch
on
Legt fest, ob Programme innerhalb eines Dateisystems ausführbar sind. Wenn diese Eigenschaft auf off gesetzt ist, werden mmap(2)-Aufrufe mit PROT_EXEC nicht zugelassen.
mounted
Boolesch
entf.
Schreibgeschützte Eigenschaft, die angibt, ob gegenwärtig ein Dateisystem, Klon oder Schnappschuss eingehängt ist. Diese Eigenschaft gilt nicht für Volumes. Werte: yes oder no.
mountpoint
Zeichenkette
entf.
Legt den Einhängepunkt für das betreffende Dateisystem fest. Wenn die Eigenschaft mountpoint für ein Dateisystem geändert wird, werden das Dateisystem selbst und alle seine untergeordneten Dateisysteme, die den Einhängepunkt geerbt haben, ausgehängt. Wenn der neue Wert legacy ist, bleiben sie ausgehängt. Andernfalls werden sie, wenn die Eigenschaft vorher auf legacy oder none gesetzt war bzw. die Dateisysteme vor dem Ändern der Eigenschaft eingehängt waren, am neuen Bestimmungsort automatisch eingehängt. Darüber hinaus wird der Netzwerkzugriff auf die betreffenden Dateisysteme gesperrt und am neuen Bestimmungsort freigegeben.

Weitere Informationen zur Verwendung dieser Eigenschaft finden Sie unter Verwalten von ZFS-Einhängepunkten.

primarycache
Zeichenkette
all
Kontrolliert, was im Primär-Cache gespeichert wird (ARC). Mögliche Werte sind all, none und metadata. Ist diese Eigenschaft auf all gesetzt, werden sowohl Benutzerdaten als auch Metadaten im Cache gespeichert. Ist diese Eigenschaft auf none gesetzt, werden weder Benutzerdaten noch Metadaten im Cache gespeichert. Ist diese Eigenschaft auf metadata gesetzt, werden nur Metadaten gespeichert.
origin
Zeichenkette
entf.
Schreibgeschützte Eigenschaft für geklonte Dateisysteme bzw. Volumes, die angibt, aus welchem Schnappschuss der betreffende Klon erstellt wurde. Das ursprüngliche Dateisystem kann (auch mit den Optionen -r oder -f) nicht gelöscht werden, solange ein Klon vorhanden ist.

Bei ungeklonten Dateisystemen besitzt diese Eigenschaft den Wertnone.

quota
Zahl (oder none)
none
Beschränkt die Festplattenkapazität, die von Datasets und untergeordneten Objekten belegt werden kann. Diese Eigenschaft erzwingt einen absoluten Grenzwert der Festplattenkapazität, die belegt werden kann. Dazu zählt auch der Speicherplatz, der von untergeordneten Objekten wie Dateisystemen und Schnappschüssen belegt wird. Das Setzen eines Kontingentes für ein untergeordnetes Objekt eines Datasets, für den bereits ein Kontingent definiert wurde, überschreibt den vom übergeordneten Dataset geerbten Wert nicht, sondern setzt darüber hinaus einen zusätzlichen Grenzwert. Kontingente können nicht für Volumes eingestellt werden, da deren Eigenschaft volsize bereits ein Kontingent darstellt.

Weitere Informationen zum Einstellen von Kontingenten finden Sie unter Setzen von Kontingenten für ZFS-Dateisysteme.

readonly
Boolesch
off
Legt fest, ob ein Dataset geändert werden kann. Wenn diese Eigenschaft auf on gesetzt ist, können keine Änderungen vorgenommen werden.

Die Abkürzung der Eigenschaft lautet rdonly.

recordsize
Zahl
128K
Legt eine empfohlene Blockgröße für Dateien in einem Dateisystem fest.

Die Abkürzung der Eigenschaft lautet recsize. Eine ausführliche Beschreibung finden Sie unter Die Eigenschaft recordsize.

referenced
Zahl
entf.
Eine schreibgeschützte Eigenschaft, die die Datenmenge festlegt, auf die ein Dataset zugreifen kann. Solche Daten können von Datasets im Pool gemeinsam genutzt oder auch nicht gemeinsam genutzt werden.

Bei der Erstellung eines Schnappschusses bzw. Klons wird anfänglich die gleiche Festplattenkapazität referenziert, die der Kapazität des Dateisystems bzw. Schnappschusses entspricht, aus dem er erstellt wurde, da der Inhalt identisch ist.

Die Abkürzung der Eigenschaft lautet refer.

refquota
Zahl (oder "none")
none
Legt fest, wie viel Festplattenkapazität ein Dataset belegen kann. Die Eigenschaft erzwingt einen absoluten Grenzwert des belegbaren Speicherplatzes. Dieser Grenzwert umfasst keine durch untergeordnete Objekte wie z. B. Schnappschüsse und Klone belegte Festplattenkapazität.
refreservation
Zahl (oder "none")
none
Legt die garantierte Mindestfestplattenkapazität für ein Dataset fest (ohne untergeordnete Objekte, wie etwa Schnappschüsse oder Klone). Liegt die belegte Festplattenkapazität unter dem hier angegebenen Wert, wird das Dataset behandelt, als würde es den mit refreservation angegebenen Speicherplatz belegen. Reservierungen durch refreservation werden in die Berechnung der Festplattenkapazität für das diesem Dataset übergeordnete Dataset einbezogen und auf die Kontingente und Reservierung für das übergeordnete Dataset angerechnet.

Wenn refreservation gesetzt ist, wird ein Schnappschuss nur zugelassen, wenn außerhalb dieser Reservierung genügend freier Speicherplatz im Pool vorhanden ist, um die Menge der aktuell referenzierten Byte im Dataset aufzunehmen.

Die Abkürzung der Eigenschaft lautet refreserv.

reservation
Zahl (oder "none")
none
Legt die Mindestfestplattenkapazität für ein Dataset und seine untergeordneten Objekte fest. Liegt die belegte Festplattenkapazität unter dem hier angegebenen Wert, wird das Dataset behandelt, als würde es den in dieser Reservierung angegebenen Speicherplatz belegen. Reservierungen werden in die Berechnung der Festplattenkapazität für das diesem Dataset übergeordneten Dataset einbezogen und auf die Kontingente und Reservierung für das übergeordneten Dataset angerechnet.

Die Abkürzung der Eigenschaft lautet reserv.

Weitere Informationen dazu finden Sie unter Setzen von Reservierungen für ZFS-Dateisysteme.

secondarycache
Zeichenkette
all
Kontrolliert, was im Sekundär-Cache gespeichert wird (L2ARC). Mögliche Werte sind all, none und metadata. Ist diese Eigenschaft auf all gesetzt, werden sowohl Benutzerdaten als auch Metadaten im Cache gespeichert. Ist diese Eigenschaft auf none gesetzt, werden weder Benutzerdaten noch Metadaten im Cache gespeichert. Ist diese Eigenschaft auf metadata gesetzt, werden nur Metadaten gespeichert.
setuid
Boolesch
on
Legt fest, ob das setuid-Bit in einem Dateisystem berücksichtigt wird.
shareiscsi
Zeichenkette
off
Legt fest, ob ein ZFS-Volume gemeinsam als iSCSI-Ziel genutzt wird. Eigenschaftswerte: on, off und type=disk. Sie können shareiscsi=on für ein Dateisystem setzen, sodass alle ZFS-Volumes innerhalb des Dateisystems standardmäßig freigegeben sind. Das Setzen dieser Eigenschaft für ein Dateisystem hat jedoch keine direkte Auswirkung.
sharenfs
Zeichenkette
off
Legt fest, ob das Dateisystem über NFS zugänglich ist und welche Optionen verwendet werden. Wenn diese Eigenschaft auf on gesetzt ist, wird der Befehl zfs share ohne Optionen aufgerufen. Andernfalls wird der Befehl zfs share mit den Optionen aufgerufen, die dem Inhalt dieser Eigenschaft entsprechen. Wenn die Eigenschaft auf off gesetzt ist, wird das Dateisystem über die älteren Befehle share und unshare und die Datei dfstab verwaltet.

Legt fest, ob ein ZFS-Dataset als NFS-Freigabe veröffentlicht wird. Mit den Befehlen zfs share bzw. zfs unshare können Sie auch eine NFS-Freigabe eines ZFS-Datasets veröffentlichen bzw. deren Veröffentlichung aufheben. Beide Verfahren zur Veröffentlichung einer NFS-Freigabe setzen voraus, dass die Eigenschaften der NFS-Freigabe bereits festgelegt sind. Informationen zum Festlegen der Eigenschaften der NFS-Freigabe finden Sie in Bezug auf den Befehl zfs set share

Beim Ändern der Eigenschaft sharenfs werden die Dateisystemfreigaben und alle untergeordneten Elemente, die die Eigenschaft erben, mit allen mithilfe des Befehls zfs set share festgelegten neuen Optionen neu veröffentlicht. Dies gilt jedoch nur, wenn die Eigenschaft zuvor deaktiviert war oder die Freigaben vor Änderung der Eigenschaft veröffentlicht wurden. Ist die neue Eigenschaft deaktiviert, werden die Dateisystemfreigaben nicht veröffentlicht.

Weitere Informationen zur Nutzung von ZFS-Dateisystemen für den Netzwerkzugang finden Sie unter Freigeben und Sperren von ZFS-Dateisystemen.

snapdir
Zeichenkette
hidden
Legt fest, ob das Verzeichnis .zfs in der Root des Dateisystems verborgen oder sichtbar ist. Weitere Informationen zur Verwendung von Schnappschüssen finden Sie unter Überblick über ZFS-Schnappschüsse.
type
Zeichenkette
entf.
Schreibgeschützte Eigenschaft, die den Typ des betreffenden Datasets (filesystem (Dateisystem oder Klon), volume oder snapshot) angibt.
used
Zahl
entf.
Schreibgeschützte Eigenschaft, die die für ein Dataset und alle seine untergeordneten Objekte belegte Festplattenkapazität angibt.

Eine ausführliche Beschreibung finden Sie unter Die Eigenschaft used.

usedbychildren
Zahl
off
Schreibgeschützte Eigenschaft, die die Festplattenkapazität angibt, die von untergeordneten Objekten dieses Datasets beansprucht wird und die beim Löschen dieser untergeordneten Objekte frei werden würde. Die Abkürzung für die Eigenschaft ist usedchild.
usedbydataset
Zahl
off
Schreibgeschützte Eigenschaft, die die Festplattenkapazität angibt, die vom Dataset selbst beansprucht wird und die beim Löschen des Datasets und vorherigem Löschen aller Schnappschüsse und Entfernen von refreservation frei werden würde. Die Abkürzung für diese Eigenschaft ist usedds.
usedbyrefreservation
Zahl
off
Schreibgeschützte Eigenschaft, die die von einem refreservation-Set auf diesem Dataset beanspruchte Festplattenkapazität angibt, die beim Entfernen von refreservation frei werden würde. Die Abkürzung für die Eigenschaft ist usedds.
usedbysnapshots
Zahl
off
Schreibgeschützte Eigenschaft, die die von Schnappschüssen dieses Datasets beanspruchte Festplattenkapazität angibt. Insbesondere geht es dabei um die Festplattenkapazität, die beim Löschen aller Schnappschüsse des Datasets frei werden würde. Beachten Sie, dass es sich bei diesem Wert nicht einfach um die Summe der used-Eigenschaften der Schnappschüsse handelt, da Speicherplatz von mehreren Schnappschüssen gemeinsam genutzt werden kann. Die Abkürzung für diese Eigenschaft ist usedsnap.
version
Zahl
entf.
Die aktuelle, von der Pool-Version unabhängige Version eines Dateisystems auf der Festplatte. Diese Eigenschaft kann nur bei einer nachfolgenden Version der unterstützten Software gesetzt werden. Weitere Informationen finden Sie unter zfs upgrade-Befehl.
volsize
Zahl
entf.
Legt die logische Größe eines Volumes fest (gilt nur für Volumes).

Eine ausführliche Beschreibung finden Sie unter Die Eigenschaft volsize.

volblocksize
Zahl
8 kB
Legt die Blockgröße eines Volumes fest (gilt nur für Volumes). Nach dem Schreiben von Daten auf das betreffende Volume kann die Blockgröße nicht mehr geändert werden. Deswegen muss diese Eigenschaft bei der Erstellung des Volumes gesetzt werden. Die Standardblockgröße für Volumes ist 8 KB. Es sind alle Werte zur Potenz von 2 im Bereich von 512 Byte bis 128 KB zulässig.

Die Abkürzung der Eigenschaft lautet volblock.

zoned
Boolesch
entf.
Gibt an, ob dieses Dataset zu einer nicht globalen Zone hinzugefügt wurde. Wenn diese Eigenschaft gesetzt ist, befindet sich der Einhängepunkt nicht in der globalen Zone, und ZFS kann ein solches Dateisystem auf Anforderung nicht einhängen. Bei der ersten Installation einer Zone wird diese Eigenschaft für alle hinzugefügten Dateisysteme gesetzt.

Weitere Informationen zur Verwendung von ZFS mit installierten Zonen finden Sie in Verwendung von ZFS in einem Solaris-System mit installierten Zonen.

xattr
Boolesch
on
Legt fest, ob für das betreffende Dateisystem erweiterte Attribute aktiviert (on) oder deaktiviert sind (off).

Schreibgeschützte native ZFS-Eigenschaften

Schreibgeschützte native Eigenschaften können gelesen, aber nicht gesetzt werden. Schreibgeschützte native Eigenschaften werden nicht vererbt. Einige native Eigenschaften gelten nur für bestimmte Dataset-Typen. In solchen Fällen ist der entsprechende Dataset-Typ in der Beschreibung in Tabelle 6-1 aufgeführt.

Die schreibgeschützten nativen Eigenschaften sind hier aufgeführt und in Tabelle 6-1 beschrieben.

Weitere Informationen zur Berechnung von Festplattenkapazität (einschließlich Informationen zu den Eigenschaften used, referenced und available) finden Sie unter Berechnung von ZFS-Festplattenkapazität.

Die Eigenschaft used

Die Eigenschaft used ist eine schreibgeschützte Eigenschaft, die die für ein Dataset und alle seine untergeordneten Objekte belegte Festplattenkapazität angibt. Dieser Wert wird gegen die für das Dataset gesetzten Kontingente und Reservierungen geprüft. Die belegte Festplattenkapazität enthält nicht die Reservierungen für das Dataset selbst, schließt jedoch die Reservierungen für untergeordnete Datasets ein. Die Festplattenkapazität, die das Dataset aufgrund seines übergeordneten Datasets belegt, sowie die Festplattenkapazität, die beim rekursiven Löschen des Datasets freigegeben wird, sind größer als die Kapazität, die das Dataset für den belegten Speicherplatz und die Reservierung benötigt.

Bei der Erstellung von Schnappschüssen wird diese Festplattenkapazität anfänglich vom Schnappschuss und dem Dateisystem (sowie eventuellen früheren Schnappschüssen) gemeinsam genutzt. Wenn sich ein Dateisystem mit der Zeit ändert, gehört zuvor gemeinsam genutzte Festplattenkapazität dann ausschließlich dem Schnappschuss und wird in die Berechnung des vom Schnappschuss belegten Speicherplatzes einbezogen. Wie viel Festplattenkapazität von einem Schnappschuss belegt wird, hängt von den speziellen Daten des Schnappschusses ab. Zudem kann durch das Löschen von Schnappschüssen die Festplattenkapazität, die Schnappschüssen eindeutig zugewiesen ist (und von diesen verwendet wird), größer werden. Weitere Informationen zu Schnappschüssen und Speicherplatzaspekten finden Sie in Verhalten bei ungenügendem Speicherplatz.

In die belegte, verfügbare und referenzierte Festplattenkapazität werden keine anstehenden Änderungen einbezogen. Anstehende Änderungen werden im Allgemeinen innerhalb weniger Sekunden abgeschlossen. Nach Abschluss eines Schreibvorgangs auf dem Datenträger durch die Funktion fsync(3c) oder O_SYNC werden die Informationen zur belegten Festplattenkapazität nicht unbedingt sofort aktualisiert.

Die Informationen der Eigenschaften usedbychildren, usedbydataset , usedbyrefreservation und usedbysnapshots kann mit dem Befehl zfs list - o space angezeigt werden. Diese Eigenschaften bestimmen die Eigenschaft used für Festplattenkapazität, die von untergeordneten Objekten belegt wird. Weitere Informationen finden Sie in Tabelle 6-1.

Konfigurierbare native ZFS-Eigenschaften

Konfigurierbare native Eigenschaften können gelesen und gesetzt werden. Konfigurierbare native Eigenschaften werden mithilfe des Befehls zfs set(siehe Setzen von ZFS-Eigenschaften) bzw. zfs create (siehe Erstellen eines ZFS-Dateisystems) gesetzt. Außer Kontingenten und Reservierungen werden konfigurierbare Eigenschaften vererbt. Weitere Informationen zu Kontingenten und Reservierungen finden Sie unter Einstellen von ZFS-Kontingenten und -Reservierungen.

Einige konfigurierbare native Eigenschaften gelten nur für bestimmte Dataset-Typen. In solchen Fällen ist der entsprechende Dataset-Typ in der Beschreibung in Tabelle 6-1 aufgeführt. Sofern nichts Anderes vermerkt ist, gilt eine Eigenschaft für alle Dataset-Typen: Dateisysteme, Volumes, Klone und Schnappschüsse.

Die konfigurierbaren Eigenschaften sind hier aufgeführt und in Tabelle 6-1 beschrieben.

Die Eigenschaft canmount

Wenn die Eigenschaft canmount auf off gesetzt wird, kann das Dateisystem nicht mithilfe der Befehle zfs mount bzw. zfs mount -a eingehängt werden. Das Setzen dieser Eigenschaft auf off gleicht dem Setzen der Eigenschaft mountpoint auf none. Der Unterschied besteht darin, dass das Dataset trotzdem noch die normale Eigenschaft mountpoint besitzt, die vererbt werden kann. Sie können diese Eigenschaft beispielsweise auf off setzen und Eigenschaften setzen, die an untergeordnete Dateisysteme vererbt werden. Das übergeordnete Dateisystem selbst wird jedoch nicht eingehängt und ist nicht für Benutzer zugänglich. In diesem Fall dient das übergeordnete Dateisystem als Container, für den Sie Eigenschaften festlegen können. Der Container selbst ist jedoch nicht zugänglich.

Im folgenden Beispiel wird das Dateisystem userpool erstellt und dessen Eigenschaft canmount auf off gesetzt. Einhängepunkte für untergeordnete Benutzerdateisysteme werden auf ein einziges Verzeichnis (/export/home ) gesetzt. Am übergeordneten Dateisystem gesetzte Eigenschaften werden von untergeordneten Dateisystemen geerbt; das übergeordnete Dateisystem selbst wird jedoch nicht eingehängt.

# zpool create userpool mirror c0t5d0 c1t6d0
# zfs set canmount=off userpool
# zfs set mountpoint=/export/home userpool
# zfs set compression=on userpool
# zfs create userpool/user1
# zfs create userpool/user2
# zfs mount
userpool/user1                  /export/home/user1
userpool/user2                  /export/home/user2

Durch Setzen der Eigenschaft canmount auf noauto kann das Dataset nur ausdrücklich, nicht aber automatisch eingehängt werden. Über diese Einstellung wird von der Oracle Solaris Upgrade-Software festgelegt, dass nur Datasets aus der aktiven Boot-Umgebung beim Booten eingehängt werden.

Die Eigenschaft recordsize

Die Eigenschaft recordsize legt eine empfohlene Blockgröße für Dateien im Dateisystem fest.

Diese Eigenschaft dient zur Zusammenarbeit mit Datenbanken, die auf Dateien in festen Blockgrößen zugreifen. ZFS passt Blockgrößen automatisch an interne Algorithmen an, die für typische Zugriffsstrukturen optimiert wurden. Für Datenbanken, die sehr große Dateien erstellen, Dateien jedoch mit wahlfreiem Zugriff in kleineren Blöcken lesen, können diese Algorithmen unter Umständen nicht optimal sein. Wenn Sie die Eigenschaft recordsize auf einen Wert setzen, der der Datensatzgröße der betreffenden Datenbank entspricht bzw. größer als diese ist, kann die Leistung bedeutend verbessert werden. Die Verwendung dieser Eigenschaft für allgemeine Dateisysteme kann sich negativ auf die Leistung auswirken und wird nicht empfohlen. Die angegebene Größe muss ein Zweierpotenzwert sein, der größer als oder gleich 512 Byte und kleiner als oder gleich 128 KB ist. Das Ändern der Eigenschaft recordsize eines Dateisystems wirkt sich nur auf Dateien aus, die nach der Änderung erstellt wurden. Bereits vorhandene Dateien bleiben unverändert.

Die Abkürzung der Eigenschaft lautet recsize.

Die Eigenschaft volsize

Die Eigenschaft volsize legt die logische Größe eines Volumes fest. Standardmäßig wird beim Erstellen eines Volumes Speicherplatz der gleichen Kapazität reserviert. Alle Änderungen der Eigenschaft volsize werden entsprechend in der Reservierung geändert. Diese Überprüfungen dienen zum Verhindern unerwarteten Systemverhaltens. Je nachdem, wie ein Volume benutzt wird, kann es undefiniertes Systemverhalten oder Datenbeschädigung verursachen, wenn es weniger Speicherplatz enthält, als es eigentlich angefordert hat. Solche Effekte können auch auftreten, wenn die Kapazität eines Volumes geändert wird, während es in Benutzung ist. Dies gilt besonders dann, wenn die Volume-Kapazität verkleinert wird. Gehen Sie bei der Änderung einer Volume-Kapazität stets mit äußerster Sorgfalt vor.

Obwohl dies nicht empfohlen wird, können Sie ein Sparse-Volume erstellen, indem Sie für den Befehl -zfs create -V das Flag s angeben oder die Reservierung nach der Erstellung des Volumes entsprechend ändern. Bei Sparse-Volumes ist der Wert der Reservierung ungleich der Volume-Kapazität. Änderungen der Eigenschaft volsize wirken sich bei Sparse-Volumes nicht auf den Reservierungswert aus.

Weitere Informationen zur Verwendung von Volumes finden Sie unter ZFS-Volumes.

Benutzerdefinierte ZFS-Eigenschaften

Zusätzlich zu den nativen Eigenschaften unterstützt ZFS auch beliebige benutzerdefinierte Eigenschaften. Benutzerdefinierte Eigenschaften wirken sich nicht auf das ZFS-Verhalten aus, können jedoch zum Versehen von Datasets mit Informationen, die für Ihre lokalen Gegebenheiten wichtig sind, verwendet werden.

Namen benutzerdefinierter Eigenschaften müssen den folgenden Konventionen genügen:

Namen benutzerdefinierter Eigenschaften sollten generell in die folgenden beiden Komponenten aufgeteilt werden, obwohl dies für ZFS nicht obligatorisch ist:

module:property

Bei der programmatischen Verwendung von Eigenschaften sollten Sie für die Komponente Modul einen umgekehrten DNS-Domänennamen verwenden. Dadurch wird die Wahrscheinlichkeit verringert, dass zwei unabhängig voneinander entwickelte Pakete die gleiche Eigenschaft für unterschiedliche Zwecke nutzen. Eigenschaftsnamen, die mit com.sun beginnen, sind für Oracle Corporation reserviert.

Die Werte benutzerdefinierter Eigenschaften müssen folgenden Konventionen entsprechen:

Beispiel:

# zfs set dept:users=finance userpool/user1
# zfs set dept:users=general userpool/user2
# zfs set dept:users=itops userpool/user3

Alle Befehle, die Eigenschaften verwenden (z. B. zfs list, zfs get, zfs set usw.) können native und benutzerdefinierte Eigenschaften nutzen.

Beispiel:

zfs get -r dept:users userpool
NAME            PROPERTY    VALUE           SOURCE
userpool        dept:users  all             local
userpool/user1  dept:users  finance         local
userpool/user2  dept:users  general         local
userpool/user3  dept:users  itops           local

Benutzerdefinierte Eigenschaften können mit dem Befehl zfs inherit gelöscht werden. Beispiel:

# zfs inherit -r dept:users userpool

Wenn die betreffende Eigenschaft nicht in einem übergeordneten Dataset definiert wurde, wird sie komplett entfernt.