How to restore access to a whole-disk zpool when the partition table was destroyed
(Doc ID 1482393.1)
Last updated on JUNE 06, 2018
Applies to:Solaris Operating System - Version 10 10/08 U6 and later
Oracle Solaris on x86-64 (64-bit)
This document explains how to recover access to a whole-disk zpool on a x86 based Solaris system when the partition table was destroyed.
A whole-disk (c1t1d0) is listed in the example zstatus output below as a whole disk. If there are slices listed in the zpool status output like c1t1d0s1, then this is not a whole-disk and the procedure outlined below does not apply.
If the zpool was exported, the zpool import command will not show the zpool any more. This procedure can still be applied. The same is true if /etc/zfs/zpool.cache was deleted and system was rebooted.
The procedure consists of creating a fixed disk partition table with one EFI partition. In this EFI partition we have to use EFI instead of SMI/VTOC. Printing out the values for slice 0 show us the values for the start sector and for the last sector. This value for the last sector must be used. The start sector of the s0 slice has to be adjusted to the value which zpool create would have used.
After these steps the zpool can be used again (zpool clear or import). It is good practice to run zpool scrub on the zpool to check the content now.
status: One or more devices could not be opened. There are insufficient
replicas for the pool to continue functioning.
action: Attach the missing device and online it using 'zpool online'.
scan: none requested
NAME STATE READ WRITE CKSUM
newPool UNAVAIL 0 0 0 insufficient replicas
c1t1d0 UNAVAIL 0 0 0 cannot open
To view full details, sign in with your My Oracle Support account.
Don't have a My Oracle Support account? Click to get started!
In this Document