ZFS Boot problem after hard shutdown while resilvering RAIDZ1

Hello folks.

Here are my specs:

FreeBSD Current 8.0 (amd64)
3x 2TB HDD combined to a RAIDZ1
GPT
Root is running on ZFS,
I used the following Guideline (http://wiki.freebsd.org/RootOnZFS/GPTZFSBoot/RAIDZ1)


This is the problem:

I had to replace a drive, but chose by accident a spare which hat some strange malfunction as well.
I used the command:
Code:
zpool replace zroot gpt/disk1

Code:
zpool status
gave me the information that resilvering would take 2500h (increasing).
After a couple of MB were resilvered (very slowly), I decided to shut the system down safely, which didn't work, so I powered it off by holding the power switch.
I detached the malfunctioned spare drive and tried to start the system with the two HDDs, but now I am getting

Code:
ZFS: can only boot from disk, mirror or raidz vdevs
ZFS: i/o error - all block copies unavailable
ZFS: can't read object set for dataset lld
Can't find root filesystem - giving up
ZFS: unexpected object set type lld
ZFS: unexpected object set type lld

FreeBSD/i386 boot
Default: zroot:/boot/kernel/kernel
boot:
ZFS: unexpected object set type lld

FreeBSD/i386 boot
Default: zroot:/boot/kernel/kernel
boot:_

I used my LiveFS USB and tried with Fixit, after loading opensolaris.ko and zfs.ko:
Code:
zpool import -f zroot

After that, all HDDs started making noises as if they try to heal/restore them self. But all commands I entered then, gave me errors like:
Code:
/libexec/ld-elf.so.1: Shared object "libavl.so.2" not found, required by "zpool"
Even simple commands like "ls" produce simular messages.
I waited one night until the HDDs went silent and rebooted, but without any luck.


Question:

Is there any way of getting this system up again?


Regards,
Morrison
 
The solution came from a user of the freebsd-fs mailing-list.
He recommended:
I have the same problem. You can do three things: 1) do nothing and wait, because ZFS pool starts resilvering 2) set LD_LIBRARY_PATH to /zroot and use all utilites 3) Exit from fixit after import and enter it again. ZFS will be mounted and shell will be functional.
I went for option 3. I did zpool scrub zroot afterwards on the two disks, no errors. I connect the faulty drive again to stop the resilvering with zpool scrub -s zroot. After a restart and zpool clear zroot gpt/disk1 the system booted again, but cause the spare was malfunction, I disconnected it and the system started afterwards in a normal degraded state. I bought a new HDD just now and my system is resilvering the disk with a normal amount of time.

Morrison
 
Back
Top