とりあえず TBD

とりあえず、いきあたりばったり

ZFS の scrub でエラーが出てしまった

自宅サーバのディスクは ZFS にてミラー化している。一応、定期的に scrub する設定をしてある

具体的には、/etc/periodic.conf に以下のような記述がしてある。

# 404.status-zfs
daily_status_zfs_enable="YES"                   # Check ZFS
daily_status_zfs_zpool_list_enable="YES"        # List ZFS pools
# 800.scrub-zfs
daily_scrub_zfs_enable="YES"
daily_scrub_zfs_pools=""                        # empty string selects all pool
daily_scrub_zfs_default_threshold="21"          # days between scrubs

というわけで、21日(=3週間)ごとに scrub が走るというわけだ。

昨日の daily run output にこんなレポートが…

Checking status of zfs pools:
NAME    SIZE  ALLOC   FREE    CAP  DEDUP  HEALTH  ALTROOT
pool0  1.69T   865G   863G    50%  1.00x  ONLINE  -

 pool: pool0
 state: ONLINE
status: One or more devices has experienced an unrecoverable error.  An
    attempt was made to correct the error.  Applications are unaffected.
action: Determine if the device needs to be replaced, and clear the errors
    using 'zpool clear' or replace the device with 'zpool replace'.
   see: http://illumos.org/msg/ZFS-8000-9P
  scan: scrub repaired 128K in 1h39m with 0 errors on Sun Oct  6 04:44:46 2013
config:

    NAME           STATE     READ WRITE CKSUM
    pool0          ONLINE       0     0     0
      mirror-0     ONLINE       0     0     0
        gpt/disk0  ONLINE       0     0     0
        gpt/disk1  ONLINE       0     0     1

errors: No known data errors

disk1 に checksum のエラーがでたが、どうやら、自動修復されたようだ。ファイルに影響は出ないらしい。

とりあえずみなかったことにしよう

 # zpool clear pool0        # エラーステータスをクリア
 # zpool status             # どうなったか確認
  pool: pool0
 state: ONLINE
  scan: scrub repaired 128K in 1h39m with 0 errors on Sun Oct  6 04:44:46 2013
 config:

        NAME           STATE     READ WRITE CKSUM
        pool0          ONLINE       0     0     0
          mirror-0     ONLINE       0     0     0
            gpt/disk0  ONLINE       0     0     0
            gpt/disk1  ONLINE       0     0     0

 errors: No known data errors

はい、これで無かった事になりました。 (おい

いや、無かった事にはなっていない。上記の出力のとおり「修復しましたよ」という記録がステータスは残っている。