Skip to Main Content

Infrastructure Software

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

How to reconstruct a zpool array after disk IDs all change?

976453Jun 28 2015 — edited Jun 28 2015

Hi All,

I recently shut down and moved my x86 solaris 11 server, with 1 boot drive and a 9 disk zpool, from one room to another, only to find that it wouldn't boot. (During this exercise I opened the server and cleared out about 3 years worth of dust).

Some nosing around found that one of power cables had come loose for one of the drives in the array (3 sets x3 disks, making up the pool).  I reconnected the drive, recovered the boot_archive after booting from the Live CD (looks like the shutdown wasn't clean originally) and, voila, the system was up and running again as before.... almost.

One oddity:  My 9 disk zpool was unavailable with a total of 5 disks showing as unavailable... What?!


(No read, write, cksum errors anywhere in the below list)


raidz1-0 DEGRADED

     c14t1d0

     c15t1d0

     c8t0d0                    UNAVAIL

raidz1-1 UNAVAIL
     c15t0d0                 

     c8t2d0                    UNAVAIL

     c8t3d0                    UNAVAIL

raidz1-2 UNAVAIL

     c14t0d0

     c8t5d0                    UNAVAIL

     c8t4d0                    UNAVAIL


When I run 'format', I discover that there's a whole new naming convention being used on the drives, c14t0d0, c14t1d0, c15t0d0, c15t1d0, c16d0, c16d1, c17d0, c17d1, c18d0, c19d1.  The first 4 may 'look' the same but I've no reason to presume that they correspond to the original numbering now either.  All the devices are showing as working and accessible in 'format' with no errors appearing it's just that they no longer correlate with what they used to be.


Is there any way to make solaris look at the device contents and zpool layout to basically say, "Ok well this device is actually that one over there in raidz1-0 and this other device is actually that disk in raidz1-1 etc"?


Considering it's common for things like controllers to fail, zpools to be moved etc, I'm assuming it's common for the device ID to change and need to be remapped, I've just no idea how.  I had started to test with "zpool clear mypool c8t0d0" but it had reported no such device.  It was that point at which I realised, the devices weren't missing at all, their IDs had changed (seemingly) all by themselves.


I'm a little wary of touching the array until I know what to do, assuming it is still recoverable.  The disks were inaccessible after the move and the whole array is offline, it's reasonable to assume the data is all intact, if only there's a way to remap the new device IDs onto the zpool.


KR

Andrew

Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Jul 26 2015
Added on Jun 28 2015
0 comments
485 views