[OpenIndiana-discuss] import of pool fails, due to changed device path?

Jim Klimov jimklimov at cos.ru
Thu Nov 22 13:45:54 UTC 2012


On 2012-11-22 11:18, Ong Yu-Phing wrote:
> I have an interesting situation where an upgrade of OI 151a3 is unable
> to import my pool, yet booting into a live USB allows access to the pool
> without problems.
>
> The zpool import fails with this sort of message:
>          pool1       UNAVAIL  insufficient replicas
>            mirror-0  UNAVAIL  corrupted data
>              c3t0d0  ONLINE
>              c3t1d0  ONLINE
>
...
> So I noticed that even though the disk is c3t0d0, the path shows in the
> disk label as c2t0d0s0 (and similarly for the "child"/partner mirrored
> disk, c3t1d0, yet path shows as c2t1d0), is this what is causing the
> really strange behaviour, when even though the devices are considered
> ONLINE, the pool itself is UAVAIL?  And if so, is there any way to fix
> this?

To recap, if you boot into LiveUSB, you can import the pool and there
are no errors? The zpool status from above is reported by your live
system?
Does it work for you to:
1) Boot LiveUSB
2) zpool import (-f?) pool
3) zpool export pool
4) Try to boot main OS installation and use the pool?
(This is the procedure to "fix" similar looking problems with rpools)

Is the situation influenced by presence of removable storage (USB,
eSATA) at boot of the installed OS? (I guess it can "move" the
controller names around) For example, if you boot the installed
OI while the liveusb is still plugged in - is the situation the
same?

Remove /etc/zfs/zpool.cache on your OI installation and have it
search for your pool components during zpool import completely.
Alternately, import the pool with different or none cache file:
   zpool import -R / pool
This should work around the device/driver renamings if that's
the only problem.

What was your upgrade procedure? Did you "pkg upgrade" or reinstall?
It might help to look around such files as /etc/path_to_inst,
/etc/driver*, /etc/device*, /dev/*, /devices* and try to rename
the storage controller device nodes so that they report what your
pool wants. This is a kind of woodoo magic, so should be last resort :)

HTH,
//Jim Klimov




More information about the OpenIndiana-discuss mailing list