Oracle Solaris ZFS-Administrationshandbuch

Abfragen von ZFS-Eigenschaften

Am Einfachsten können Eigenschaftswerte mit dem Befehl zfs list abgefragt werden. Weitere Informationen dazu finden Sie unter Auflisten grundlegender ZFS-Informationen. Für komplexere Abfragen und Skripten sollten Sie den Befehl zfs get verwenden, da dieser ausführlichere Informationen in einem anpassbaren Format anzeigt.

Sie können Dataset-Eigenschaften mit dem Befehl zfs get abrufen. Das folgende Beispiel zeigt, wie ein Eigenschaftswert eines Datasets abgerufen werden kann:


# zfs get checksum tank/ws
NAME             PROPERTY       VALUE                      SOURCE
tank/ws          checksum       on                         default

In der vierten Spalte SOURCE wird der Ursprung des betreffende Eigenschaftswerts angezeigt. In der folgenden Tabelle werden die möglichen Ursprungswerte erläutert.

Tabelle 6–3 Mögliche SOURCE-Werte (Befehl zfs get)

SOURCE-Wert 

Beschreibung 

default

Dieser Eigenschaftswert wurde für dieses Dataset bzw. seine übergeordneten Datasets nie explizit gesetzt. Es wird der Standardwert für diese Eigenschaft verwendet. 

inherited from Dataset-Name

Dieser Eigenschaftswert wurde vom übergeordneten Dataset geerbt, das in dataset-name angegeben ist.

local

Dieser Eigenschaftswert wurde mithilfe von zfs set für dieses Dataset explizit gesetzt.

temporary

Dieser Eigenschaftswert wurde mithilfe von zfs mount - o gesetzt und gilt nur solange, wie das Dateisystem eingehängt ist. Weitere Informationen zu temporären Eigenschaften von Einhängepunkten finden Sie unter Verwenden temporärer Einhängepunkte.

- (keiner) 

Diese Eigenschaft ist schreibgeschützt. Ihr Wert wird von ZFS bereitgestellt. 

Sie können alle Dataset-Eigenschaftswerte mit dem speziellen Schlüsselwort all abrufen. In den folgenden Beispielen wird das Schlüsselwort all verwendet:


# zfs get all tank/home
NAME       PROPERTY              VALUE                  SOURCE
tank/home  type                  filesystem             -
tank/home  creation              Tue Jun 29 11:44 2010  -
tank/home  used                  21K                    -
tank/home  available             66.9G                  -
tank/home  referenced            21K                    -
tank/home  compressratio         1.00x                  -
tank/home  mounted               yes                    -
tank/home  quota                 none                   default
tank/home  reservation           none                   default
tank/home  recordsize            128K                   default
tank/home  mountpoint            /tank/home             default
tank/home  sharenfs              off                    default
tank/home  checksum              on                     default
tank/home  compression           off                    default
tank/home  atime                 on                     default
tank/home  devices               on                     default
tank/home  exec                  on                     default
tank/home  setuid                on                     default
tank/home  readonly              off                    default
tank/home  zoned                 off                    default
tank/home  snapdir               hidden                 default
tank/home  aclmode               groupmask              default
tank/home  aclinherit            restricted             default
tank/home  canmount              on                     default
tank/home  shareiscsi            off                    default
tank/home  xattr                 on                     default
tank/home  copies                1                      default
tank/home  version               4                      -
tank/home  utf8only              off                    -
tank/home  normalization         none                   -
tank/home  casesensitivity       sensitive              -
tank/home  vscan                 off                    default
tank/home  nbmand                off                    default
tank/home  sharesmb              off                    default
tank/home  refquota              none                   default
tank/home  refreservation        none                   default
tank/home  primarycache          all                    default
tank/home  secondarycache        all                    default
tank/home  usedbysnapshots       0                      -
tank/home  usedbydataset         21K                    -
tank/home  usedbychildren        0                      -
tank/home  usedbyrefreservation  0                      -
tank/home  logbias               latency                default

Hinweis –

Die Eigenschaften casesensitivity, nbmand, normalization, sharesmb, utf8only und vscan sind in Oracle Solaris 10 nicht voll funktionsfähig, da der Oracle Solaris SMB-Service nicht von Oracle Solaris 10 unterstützt wird.


Mit der Option -s des Befehls zfs get können Sie die anzuzeigenden Eigenschaften nach Ursprungstyp angeben. Diese Option liest eine kommagetrennte Liste der gewünschten Ursprungstypen ein. Es werden nur Eigenschaften des gewünschten Ursprungstyps angezeigt. Zulässige Ursprungstypen sind local, default, inherited, temporary und none. Das folgende Beispiel zeigt alle Eigenschaften, die in pool lokal gesetzt wurden.


# zfs get -s local all pool
NAME             PROPERTY      VALUE                      SOURCE
pool             compression   on                         local

Alle der o. g. Optionen können zusammen mit der Option -r verwendet werden, um die angegebenen Eigenschaften aller untergeordneten Datasets rekursiv anzuzeigen. Im folgenden Beispiel werden alle temporären Eigenschaften aller Datasets in tank rekursiv angezeigt:


# zfs get -r -s temporary all tank
NAME             PROPERTY       VALUE                      SOURCE
tank/home          atime          off                      temporary
tank/home/bonwick  atime          off                      temporary
tank/home/marks    atime          off                      temporary

Mithilfe des Befehls zfs get können Sie Eigenschaftswerte abfragen ohne ein Zieldateisystem anzugeben, was bedeutet, dass alle Pools bzw. Dateisysteme abgefragt werden. Beispiel:


# zfs get -s local all
tank/home               atime          off                    local
tank/home/bonwick       atime          off                    local
tank/home/marks         quota          50G                    local

Weitere Informationen zum Befehl zfs get finden Sie in der Man Page zfs(1M).

Abfragen von ZFS-Eigenschaften für Skripten

Der Befehl zfs get unterstützt die Optionen -H und - o, die speziell für die Verwendung dieses Befehl in Skripten vorgesehen sind. Sie können die Option -H verwenden, um die Kopfzeileninformationen zu unterdrücken und Leerzeichen durch Tabulatorzeichen zu ersetzen. Dadurch können Daten einfach analysiert werden. Sie können die Option -o verwenden, um die Ausgabe wie folgt anzupassen:

Das folgende Beispiel zeigt, wie mithilfe der Optionen -H und -o des Befehls zfs get ein einzelner Wert abgerufen werden kann.


# zfs get -H -o value compression tank/home
on

Die Option -p gibt nummerische Werte exakt aus. 1 MB wird beispielsweise als 1000000 ausgegeben. Diese Option lässt sich wie folgt verwenden:


# zfs get -H -o value -p used tank/home
182983742

Mit der Option -r und allen der o. g. Optionen können Sie Werte für alle untergeordneten Datasets rekursiv abrufen. Im folgenden Beispiel werden die Optionen -H, -o und - r verwendet, um den Dataset-Namen sowie der Wert der Eigenschaft used für export/home und die untergeordneten Objekte abzurufen, während die Kopfzeile der Befehlsausgabe unterdrückt wird:


# zfs get -H -o name,value -r used export/home
export/home             5.57G
export/home/marks       1.43G
export/home/maybee      2.15G