Les informations d'état du pool de stockage ZFS s'affichent à l'aide de la commande zpool status. Par exemple :
# zpool status pond pool: pond state: DEGRADED status: One or more devices are unavailable in response to persistent errors. Sufficient replicas exist for the pool to continue functioning in a degraded state. action: Determine if the device needs to be replaced, and clear the errors using 'zpool clear' or 'fmadm repaired', or replace the device with 'zpool replace'. Run 'zpool status -v' to see device specific details. scan: scrub repaired 0 in 0h0m with 0 errors on Wed Jun 20 13:16:09 2012 config: NAME STATE READ WRITE CKSUM pond DEGRADED 0 0 0 mirror-0 ONLINE 0 0 0 c0t5000C500335F95E3d0 ONLINE 0 0 0 c0t5000C500335F907Fd0 ONLINE 0 0 0 mirror-1 DEGRADED 0 0 0 c0t5000C500335BD117d0 ONLINE 0 0 0 c0t5000C500335DC60Fd0 UNAVAIL 0 0 0 errors: No known data errors
Cette sortie est décrite dans la section suivante.
Cette section dans la sortie zpool status se compose des champs suivants, certains d'entre eux n'étant affichés que pour les pools présentant des problèmes :
Identifie le nom du pool.
Indique l'état de maintenance actuel du pool. Ces informations concernent uniquement la capacité de pool à fournir le niveau de réplication requis.
Décrit les problèmes du pool. Ce champ est absent si aucune erreur n'est détectée.
Action recommandée pour la réparation des erreurs. Ce champ est absent si aucune erreur n'est détectée.
Fait référence à un article de connaissances contenant des informations de réparation détaillées. Les articles en ligne sont mis à jour plus régulièrement que ce guide. Par conséquent, vous devez vous y reporter pour obtenir les procédures de réparation les plus récentes. Ce champ est absent si aucune erreur n'est détectée.
Identifie l'état actuel d'une opération de nettoyage. Ce champ peut indiquer la date et l'heure du dernier nettoyage, un nettoyage en cours ou l'absence de demande de nettoyage.
Identifie les erreurs de données ou l'absence d'erreurs de données connues.
Le champ config de la sortie zpool status décrit la configuration des périphériques inclus dans le pool, ainsi que leur état et toute erreur générée à partir des périphériques. L'état peut être l'un des suivants : ONLINE, FAULTED, DEGRADED ou SUSPENDED. Si l'état n'est pas ONLINE, la tolérance de pannes du pool a été compromise.
La deuxième section de la sortie de configuration affiche des statistiques d'erreurs. Ces erreurs se divisent en trois catégories :
READ : erreurs d'E/S qui se sont produites lors de l'envoi d'une demande de lecture
WRITE : erreurs d'E/S qui se sont produites lors de l'envoi d'une demande d'écriture
CKSUM : erreurs de somme de contrôle signifiant que le périphérique a renvoyé des données corrompues en réponse à une demande de lecture.
Il est possible d'utiliser ces erreurs pour déterminer si les dommages sont permanents. Des erreurs d'E/S peu nombreuses peuvent indiquer une interruption de service temporaire. Si elles sont nombreuses, il est possible que le périphérique présente un problème permanent. Ces erreurs ne correspondent pas nécessairement à une altération de données telle qu'interprétée par les applications. Si la configuration du périphérique est redondante, les périphériques peuvent présenter des erreurs impossibles à corriger, même si aucune erreur ne s'affiche au niveau du périphérique RAID-Z ou du miroir. Dans ce cas, ZFS a récupéré les données correctes et a réussi à réparer les données endommagées à partir des répliques existantes.
Pour plus d'informations sur l'interprétation de ces erreurs, reportez-vous à la section Détermination du type de panne de périphérique.
Enfin, les informations auxiliaires supplémentaire sont affichées dans la dernière colonne de la sortie de zpool status. Ces informations s'étendent dans le champ state et facilitent le diagnostic des pannes. Si l'état d'un périphérique est UNAVAIL, ce champ indique si le périphérique est inaccessible ou si les données du périphérique sont endommagées. Si le périphérique est en cours de réargenture, ce champ affiche la progression du processus.
Pour plus d'informations sur la surveillance de la progression de la réargenture, reportez-vous à la section Affichage de l'état de réargenture.
La section sur le nettoyage de la sortie zpool status décrit l'état actuel de toute opération de nettoyage explicite. Ces informations sont distinctes de la détection d'erreurs dans le système, mais il est possible de les utiliser pour déterminer l'exactitude du rapport d'erreurs d'altération de données. Si le dernier nettoyage s'est récemment terminé, toute altération de données existante aura probablement déjà été détectée.
Les messages d'état du nettoyage zpool status suivants sont fournis :
Rapport de progression du nettoyage. Par exemple :
scan: scrub in progress since Wed Jun 20 14:56:52 2012 529M scanned out of 71.8G at 48.1M/s, 0h25m to go 0 repaired, 0.72% done
Message de fin du nettoyage. Par exemple :
scan: scrub repaired 0 in 0h11m with 0 errors on Wed Jun 20 15:08:23 2012
Message d'annulation du nettoyage en cours. Par exemple :
scan: scrub canceled on Wed Jun 20 16:04:40 2012
Les messages de fin de nettoyage subsistent après plusieurs réinitialisations du système.
Pour plus d'informations sur le nettoyage de données et l'interprétation de ces informations, reportez-vous à la section Contrôle de l'intégrité d'un système de fichiers ZFS.
La commande zpool status indique également si des erreurs connues sont associées au pool. La détection de ces erreurs a pu s'effectuer lors du nettoyage des données ou lors des opérations normales. Le système de fichiers ZFS gère un journal persistant de toutes les erreurs de données associées à un pool. Ce journal tourne à chaque fois qu'un nettoyage complet du système est terminé.
Les erreurs d'altération de données constituent toujours des erreurs fatales. Elles indiquent une erreur d'E/S dans au moins une application, en raison de la présence de données endommagées au sein du pool. Les erreurs de périphérique dans un pool redondant n'entraînent pas d'altération de données et ne sont pas enregistrées en tant que partie de ce journal. Par défaut, seul le nombre d'erreurs trouvées s'affiche. Vous pouvez obtenir la liste complète des erreurs et de leurs spécificités à l'aide de l'option zpool status –v. Par exemple :
# zpool status -v tank pool: tank state: ONLINE status: One or more devices has experienced an error resulting in data corruption. Applications may be affected. action: Restore the file in question if possible. Otherwise restore the entire pool from backup. see: http://support.oracle.com/msg/ZFS-8000-8A scan: scrub repaired 0 in 0h0m with 2 errors on Fri Jun 29 16:58:58 2012 config: NAME STATE READ WRITE CKSUM tank ONLINE 2 0 0 c8t0d0 ONLINE 0 0 0 c8t1d0 ONLINE 2 0 0 errors: Permanent errors have been detected in the following files: /tank/file.1
La commande fmd affiche également un message similaire dans la console système et le fichier /var/adm/messages. La commande fmdump permet également de réaliser le suivi de ces messages.
Pour plus d'informations sur l'interprétation d'erreurs d'altération de données, reportez-vous à la section Identification du type d'altération de données.