zfs raidz2 marked as UNAVAIL even though only one vdev is missing?

Steven Schlansker stevenschlansker at gmail.com
Wed Nov 11 23:27:52 UTC 2009


Hello,
This morning I found that one of my disks was going bad,
so I thought I would replace it (using zpool replace) with
a new disk.  This worked fine, and it was about 1/3 of the way through.
Then, as I was moving things around, I accidentally jostled some of
the cables.  This of course made the system extremely unhappy
and eventually resulted in a kernel panic.
Then when I tried to bring the system back up, it reported the pool
as FAULTED due to missing devices.  Figuring that it just needed
to "re-discover" the devices and considering that every zpool /
zfs command was unavailable, I decided to export and re-import
the pool.  However, now the pool is not importable!

The status shows (typed since no SSH access):
pool: universe
id: (uuid)
state: UNAVAIL
action: The pool cannot be imported due to damaged devices or data
config:
universe UNAVAIL insufficient replicas
 raidz2 UNAVAIL corrupted data
   replacing DEGRADED
     (uuid) UNAVAIL cannot open
     ad16   ONLINE
   ad10  ONLINE
   ad8 ONLINE
   ... five more drives, all ONLINE

To my eye, there should be no reason it can't import.  The drives are all marked ONLINE except for the one I know failed.

I can't zpool status -v to see *what* is corrupted because I can't import.
So here I am, stuck, unable to import.  Any suggestions as to how I can recover from this situation?

Any way to tell what is corrupted so I can maybe intentionally fail that disk and allow a scrub to recreate it?

Thanks for any advice,
Steven Schlansker


More information about the freebsd-questions mailing list