I have been trying to replace a disk in a raidz1 zpool for a few days
now, whatever i try zfs keeps using the original disk rather than the
replacement.
I''m running snv_95
-----
pool: tank
state: ONLINE
scrub: none requested
config:
NAME STATE READ WRITE CKSUM
tank ONLINE 0 0 0
raidz1 ONLINE 0 0 0
c1t1d0 ONLINE 0 0 0
c3t0d0 ONLINE 0 0 0
c2t0d0 ONLINE 0 0 0
c3t1d0 ONLINE 0 0 0
-----
I''m trying to replace c3t0d0, so far i have tried a number of ways...
1. offline the disk, unconfigure with cfgadm, hotplug new disk and zpool
replace.
While replacing i get...
(start)
replacing DEGRADED 0 0 0
c3t0d0s0/o FAULTED 0 0 0 corrupted data
c3t0d0 ONLINE 0 0 0
..... (end)
replacing DEGRADED 0 0 206
c3t0d0s0/o FAULTED 0 0 0 corrupted data
c3t0d0 ONLINE 0 0 0
- Tried to detach the old disk c3t0d0s0/o but zfs said it was being used.
- Tried exporting the pool then reimporting it, faulted disk shows up
different now
replacing DEGRADED 0 0 0
10193049639260089137 FAULTED 0 0 0 was
/dev/dsk/c3t0d0s0/old
c3t0d0 ONLINE 0 0 0
- Tried scrubbing a few times as well as rebooting, then gave up.
2. reinserted original disk, ran a scrub to ensure everything was happy
- tried hotplugging new disk via usb2 then doing a replace
(zpool replace tank c3t0d0 c4t0d0)
replacing ONLINE 0 0 0
c3t0d0 ONLINE 0 0 0
c4t0d0 ONLINE 0 0 0
- At the end of the scrub/replace zfs still refuses to let me remove
c3t0d0, and when accessing the pool
it is still being used, while c4t0d0 is not.
- scrubbed a few more times, after detaching c4t0d0
- tried to offline c3t0d0 then do a (zpool replace tank c3t0d0 c4t0d0)
replacing DEGRADED 0 0 0
c3t0d0 OFFLINE 0 0 0
c4t0d0 ONLINE 0 0 0
At this point i''m waiting for a resliver to complete ETA 4h 20min
So any ideas how to fix this???
Also when resilvering i usually get:
errors: Permanent errors have been detected in the following files:
<metadata>:<0x0>
but that goes away once the resilver completes
thanks
Aaron