Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 04 Jul 2010 14:38:54 +0300
From:      Volodymyr Kostyrko <c.kworr@gmail.com>
To:        freebsd-fs@freebsd.org
Subject:   Re: Help with Faulted zpool
Message-ID:  <i0prse$4h9$1@dough.gmane.org>
In-Reply-To: <AANLkTill2JAgt-UXTIzJHvXf_6Rbp95w01t5hQWwuoK0@mail.gmail.com>
References:  <AANLkTill2JAgt-UXTIzJHvXf_6Rbp95w01t5hQWwuoK0@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
04.07.2010 00:12, Sam Fourman Jr. написав(ла):
> Hello list,
>
> I have a File server that runs FreeBSD 8.1 (zfs v14)
> after a poweroutage, I am unable to import my zpool named Network
> my pool is made up of 6 1TB disks configured in raidz.
> there is ~1.9TB of actual data on this pool.
>
> FreeBSD does not have many option for restoring a pool from corrupt meta data
>
>
> I have loaded OpenSolaris svn_134 on a septate boot disk,
> in hopes of recovering my zpool.
>
> on Opensolaris 134, I am not able to import my zpool
> almost everything I try gives me cannot import 'Network': I/O error
>
> I have done quite a bit of searching, and I found that import -fFX
> Network should work
> however after ~ 20 hours this hard locks Opensolaris (however it does
> return a ping)
>
> here is a list of commands that I have run on Open Solaris
>
> http://www.puffybsd.com/zfsv14.txt
>
> if anyone could help me use zdb or mdb to recover my pool
> I would very much appreciate it.
>
> I believe the metadata is corrupt on my zpool

Just sharing the knowledge, you know...

Some time ago my primary file server suffers from controller damage. 
When ZFS tried to fix metadata controller was able to write most of it 
failing to complete full restore. Thus I've got pool with two or more 
recent snapshots broken. FreeBSD (RELENG_8) dumps core when trying to 
import pool. OpenSolaris (last version available, i think with ZFSv22) 
was giving the same result.

I've managed to recover all data from pool using single user mode. This 
way when I got shell ZFS already knows about my pool, but no  are 
mounted. From this point it's possible to mount each dataset RO and copy 
all data from it to another disk. You will face the kernel coredump only 
in case of some dataset metadata would be heavily damaged.

All you need is:
  1. Original zpool.cache with which your pool was imported.
  2. ZFS module loaded.
  3. Break into single user.

-- 
Sphinx of black quartz judge my vow.




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?i0prse$4h9$1>