-v オプションを使用すれば、より詳細な健全性の概要状態を要求することができます。次に例を示します。
# zpool status -v tank pool: tank state: DEGRADED status: One or more devices could not be opened. Sufficient replicas exist for the pool to continue functioning in a degraded state. action: Attach the missing device and online it using 'zpool online'. see: http://www.sun.com/msg/ZFS-8000-2Q scrub: scrub completed after 0h0m with 0 errors on Wed Jan 20 15:13:59 2010 config: NAME STATE READ WRITE CKSUM tank DEGRADED 0 0 0 mirror-0 DEGRADED 0 0 0 c1t0d0 ONLINE 0 0 0 c1t1d0 UNAVAIL 0 0 0 cannot open errors: No known data errors |
この出力には、プールが現在の状態になった理由が詳細に表示されます。たとえば、問題に関するわかりやすい説明や、詳細な情報を入手するためのナレッジ記事へのリンクが表示されます。ナレッジ記事では、現在の問題から回復するための最良の方法に関する最新情報を提供しています。構成に関する詳細な情報を利用すれば、どのデバイスが損傷しているかや、プールをどのように修復するかを確認できます。
前の例では、エラー状態のデバイスを置き換えるべきです。デバイスを置き換えたあとに、zpool online コマンドを使用してデバイスをオンラインにします。次に例を示します。
# zpool online tank c1t0d0 Bringing device c1t0d0 online # zpool status -x all pools are healthy |
autoreplace プロパティーがオンの場合、置き換えたデバイスをオンラインにする必要はない場合があります。
プールにオフラインのデバイスがある場合は、コマンドの出力から問題のプールを確認できます。次に例を示します。
# zpool status -x pool: tank state: DEGRADED status: One or more devices has been taken offline by the administrator. Sufficient replicas exist for the pool to continue functioning in a degraded state. action: Online the device using 'zpool online' or replace the device with 'zpool replace'. scrub: resilver completed after 0h0m with 0 errors on Wed Jan 20 15:15:09 2010 config: NAME STATE READ WRITE CKSUM tank DEGRADED 0 0 0 mirror-0 DEGRADED 0 0 0 c1t0d0 ONLINE 0 0 0 c1t1d0 OFFLINE 0 0 0 48K resilvered errors: No known data errors |
READ 列と WRITE 列には、そのデバイスで発生した入出力エラーの数が表示されます。CKSUM 列には、そのデバイスで発生した訂正不可能なチェックサムエラーの数が表示されます。どちらのエラー数も、デバイス障害が発生する可能性があることを示し、その場合には訂正のための対応がいくつか必要になります。最上位レベルの仮想デバイスでエラー数があると報告された場合、データの一部にアクセスできないことがあります。
errors: フィールドは既知のデータエラーを示します。
前の出力例では、オフラインのデバイスでデータエラーは発生していません。
エラー状態のプールとデータを診断および修復する方法については、第 11 章Oracle Solaris ZFS のトラブルシューティングとプールの回復を参照してください。