Guide d'administration Oracle Solaris ZFS

Affichage des informations des pools de stockage ZFS

La commande zpool list permet d'afficher les informations de base relatives aux pools.

Liste des informations concernant tous les pools de stockage ou un pool spécifique

En l'absence d'arguments, la commande zpool list affiche les informations suivantes pour tous les pools du système :


# zpool list
NAME                    SIZE    ALLOC   FREE    CAP  HEALTH     ALTROOT
tank                   80.0G   22.3G   47.7G    28%  ONLINE     -
dozer                   1.2T    384G    816G    32%  ONLINE     -

La sortie de cette commande affiche les informations suivantes :

NAME

Nom du pool.

SIZE

Taille totale du pool, égale à la somme de la taille de tous les périphériques virtuels de niveau supérieur.

ALLOC

Quantité d'espace physique utilisée, c'est-à-dire allouée à tous les jeux de données et métadonnées internes. Notez que cette quantité d'espace disque est différente de celle qui est rapportée au niveau des systèmes de fichiers.

Pour de plus amples informations sur la détermination de l'espace de systèmes de fichiers disponible, reportez-vous à la section Comptabilisation de l'espace disque ZFS.

FREE

Quantité d'espace disponible, c'est-à-dire non allouée dans le pool.

CAP (CAPACITY)

Quantité d'espace disque utilisée, exprimée en tant que pourcentage de l'espace disque total.

HEALTH

État de maintenance actuel du pool.

Pour de plus amples informations sur la maintenance des pools, reportez-vous à la section Détermination de l'état de maintenance des pools de stockage ZFS.

ALTROOT

Racine de remplacement, le cas échéant.

Pour de plus amples informations sur les pools racine de remplacement, reportez-vous à la section Utilisation de pools racine ZFS de remplacement.

Vous pouvez également rassembler des statistiques pour un pool donné en spécifiant le nom du pool. Exemple :


# zpool list tank
NAME                    SIZE    ALLOC   FREE    CAP   HEALTH     ALTROOT
tank                   80.0G    22.3G   47.7G    28%  ONLINE     -

Liste de statistiques spécifiques à un pool de stockage

L'option -o permet d'effectuer une requête concernant des statistiques spécifiques. Cette option permet de générer des rapports personnalisés ou de générer rapidement une liste d'informations pertinentes. Par exemple, pour ne répertorier que le nom et la taille de chaque pool, utilisez la syntaxe suivante :


# zpool list -o name,size
NAME                    SIZE
tank                   80.0G
dozer                   1.2T

Les noms de colonnes correspondent aux propriétés répertoriées à la section Liste des informations concernant tous les pools de stockage ou un pool spécifique.

Script de sortie du pool de stockage ZFS

La sortie par défaut de la commande zpool list a été conçue pour améliorer la lisibilité. Elle n'est pas facile à utiliser en tant que partie d'un script shell. Pour faciliter l'utilisation de la commande dans le cadre de la programmation, l'option -H permet de supprimer les en-têtes de colonnes et de séparer les champs par des onglets plutôt que par des espaces. La syntaxe suivante permet d'obtenir la liste des noms de pool du système :


# zpool list -Ho name
tank
dozer

Voici un autre exemple :


# zpool list -H -o name,size
tank   80.0G
dozer  1.2T

Affichage de l'historique des commandes du pool de stockage ZFS

ZFS consigne automatiquement les commandes zfs et zpool ayant pour effet de modifier les informations d'état du pool. Cette information peut être affichée à l'aide de la commande zpool history.

Par exemple, la syntaxe suivante affiche la sortie de la commande pour le pool racine :


# zpool history
History for 'rpool':
2010-05-11.10:18:54 zpool create -f -o failmode=continue -R /a -m legacy -o 
cachefile=/tmp/root/etc/zfs/zpool.cache rpool mirror c1t0d0s0 c1t1d0s0
2010-05-11.10:18:55 zfs set canmount=noauto rpool
2010-05-11.10:18:55 zfs set mountpoint=/rpool rpool
2010-05-11.10:18:56 zfs create -o mountpoint=legacy rpool/ROOT
2010-05-11.10:18:57 zfs create -b 8192 -V 2048m rpool/swap
2010-05-11.10:18:58 zfs create -b 131072 -V 1536m rpool/dump
2010-05-11.10:19:01 zfs create -o canmount=noauto rpool/ROOT/zfsBE
2010-05-11.10:19:02 zpool set bootfs=rpool/ROOT/zfsBE rpool
2010-05-11.10:19:02 zfs set mountpoint=/ rpool/ROOT/zfsBE
2010-05-11.10:19:03 zfs set canmount=on rpool
2010-05-11.10:19:04 zfs create -o mountpoint=/export rpool/export
2010-05-11.10:19:05 zfs create rpool/export/home
2010-05-11.11:11:10 zpool set bootfs=rpool rpool
2010-05-11.11:11:10 zpool set bootfs=rpool/ROOT/zfsBE rpool

Vous pouvez utiliser une sortie similaire sur votre système pour identifier l'ensemble réel de commandes ZFS exécutées pour résoudre les conditions d'erreur.

Les caractéristiques de l'historique sont les suivantes :

Pour identifier l'historique des commandes d'un pool de stockage spécifique, utilisez une syntaxe similaire à la suivante :


# zpool history tank
History for 'tank':
2010-05-13.14:13:15 zpool create tank mirror c1t2d0 c1t3d0
2010-05-13.14:21:19 zfs create tank/snaps
2010-05-14.08:10:29 zfs create tank/ws01
2010-05-14.08:10:54 zfs snapshot tank/ws01@now
2010-05-14.08:11:05 zfs clone tank/ws01@now tank/ws01bugfix

Utilisez l'option -l pour afficher un format détaillé comprenant le nom d'utilisateur, le nom de l'hôte et la zone dans laquelle l'opération a été effectuée. Exemple :


# zpool history -l tank
History for 'tank':
2010-05-13.14:13:15 zpool create tank mirror c1t2d0 c1t3d0 [user root on neo]
2010-05-13.14:21:19 zfs create tank/snaps [user root on neo]
2010-05-14.08:10:29 zfs create tank/ws01 [user root on neo]
2010-05-14.08:10:54 zfs snapshot tank/ws01@now [user root on neo]
2010-05-14.08:11:05 zfs clone tank/ws01@now tank/ws01bugfix [user root on neo]

L'option -i permet d'afficher des informations relatives aux événements internes utilisables pour établir des diagnostics. Exemple :


# zpool history -i tank
2010-05-13.14:13:15 zpool create -f tank mirror c1t2d0 c1t23d0
2010-05-13.14:13:45 [internal pool create txg:6] pool spa 19; zfs spa 19; zpl 4;...
2010-05-13.14:21:19 zfs create tank/snaps
2010-05-13.14:22:02 [internal replay_inc_sync txg:20451] dataset = 41
2010-05-13.14:25:25 [internal snapshot txg:20480] dataset = 52
2010-05-13.14:25:25 [internal destroy_begin_sync txg:20481] dataset = 41
2010-05-13.14:25:26 [internal destroy txg:20488] dataset = 41
2010-05-13.14:25:26 [internal reservation set txg:20488] 0 dataset = 0
2010-05-14.08:10:29 zfs create tank/ws01
2010-05-14.08:10:54 [internal snapshot txg:53992] dataset = 42
2010-05-14.08:10:54 zfs snapshot tank/ws01@now
2010-05-14.08:11:04 [internal create txg:53994] dataset = 58
2010-05-14.08:11:05 zfs clone tank/ws01@now tank/ws01bugfix