[OpenIndiana-discuss] import of pool fails, due to changed device path? (OpenIndiana-discuss Digest, Vol 28, Issue 30)

Ong Yu-Phing ong.yu.phing at group.ong-ong.com
Mon Nov 26 03:08:27 UTC 2012


yes, I've already removed /etc/zfs/zpool.cache

without doing this, the upgraded system would hang (in fact, sometimes 
it would even reboot straight after the grub prompt).

I then tried:
1) Boot LiveUSB
2) zpool import -f pool
3) zpool export pool
4) Try to boot main OS installation and use the pool
When I boot up in the upgraded system, this is when the pool is shown as 
offline

Haven't tried zpool import -R yet, but will give it a try.

 > 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 :)

it was a pkg-img update, but even a new install (I had a couple of spare 
servers for a DR test, so luckily I could swap disks and servers) with 
151a3 failed as per above.  I just think there's some strange naming of 
devices, which a USB boot gets around somehow (both 148 and 151a3 live USB).

I'll leave the voodoo magic for later, past experience has had me 
destroy some installs (non-zfs) by doing funky mknod stuff, but I 
understand what you are trying to achieve.  This system is now in test 
mode, since I've had to zfs send the various filesystems off to another 
server for production use, so I don't really mind if it's trashed, but I 
would like to figure this out for future reference.

Thanks for your suggestions!

On 22/11/2012 21:45, Jim Klimov wrote:
> 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