在Solaris 11上导入导出的池失败

无法导入导出的池。

基于下面的信息,我能够以某种方式导入池? 或者,有没有办法从驱动器本身检索数据?

两个磁盘都没有损坏。

Solaris 11.3

# zpool upgrade -v This system is currently running ZFS pool version 37. # zpool import no pools available to import 

我试过各种标志: -a-d-f …但仍然无法导入池。

如果我运行# zdb -l /dev/dsk/c2d1它会输出…

 failed to read label 0 failed to read label 1 failed to read label 2 failed to read label 3 ------------------------------------------ LABEL 0 ------------------------------------------ timestamp: 1473551773 date = Sat Sep 10 19:56:13 EDT 2016 version: 37 name: 'media_pool' state: 1 txg: 2897535 pool_guid: 5338829418358414155 hostid: 4878442 hostname: 'solaris' top_guid: 9706852805983701681 guid: 18084312246070035927 vdev_children: 1 vdev_tree: type: 'mirror' id: 0 guid: 9706852805983701681 metaslab_array: 27 metaslab_shift: 33 ashift: 9 asize: 1494648619008 is_log: 0 create_txg: 4 children[0]: type: 'disk' id: 0 guid: 18084312246070035927 path: '/dev/dsk/c2d1s0' devid: 'id1,cmdk@AWDC_WD1502FAEX-007BA0=_____WD-xxxxxxxxxxxx/a' phys_path: '/pci@0,0/pci-ide@1f,2/ide@0/cmdk@1,0:a' whole_disk: 1 DTL: 101 create_txg: 4 children[1]: type: 'disk' id: 1 guid: 14097338398603359817 path: '/dev/dsk/c5d0s0' devid: 'id1,cmdk@AWDC_WD1502FAEX-007BA0=_____WD-xxxxxxxxxxxx/a' phys_path: '/pci@0,0/pci-ide@1f,5/ide@1/cmdk@0,0:a' whole_disk: 1 DTL: 100 create_txg: 4 ------------------------------------------ LABEL 1 - CONFIG MATCHES LABEL 0 ------------------------------------------ ------------------------------------------ LABEL 2 - CONFIG MATCHES LABEL 0 ------------------------------------------ ------------------------------------------ LABEL 3 - CONFIG MATCHES LABEL 0 ------------------------------------------ 

附加信息

 # ls -l /dev/dsk/c2d1* 52 Mar 7 2016 /dev/dsk/c2d1 -> ../../devices/pci@0,0/pci-ide@1f,2/ide@0/cmdk@1,0:wd 51 Mar 7 2016 /dev/dsk/c2d1p0 -> ../../devices/pci@0,0/pci-ide@1f,2/ide@0/cmdk@1,0:q 51 Mar 7 2016 /dev/dsk/c2d1p1 -> ../../devices/pci@0,0/pci-ide@1f,2/ide@0/cmdk@1,0:r 51 Mar 7 2016 /dev/dsk/c2d1p2 -> ../../devices/pci@0,0/pci-ide@1f,2/ide@0/cmdk@1,0:s 51 Mar 7 2016 /dev/dsk/c2d1p3 -> ../../devices/pci@0,0/pci-ide@1f,2/ide@0/cmdk@1,0:t 51 Mar 7 2016 /dev/dsk/c2d1p4 -> ../../devices/pci@0,0/pci-ide@1f,2/ide@0/cmdk@1,0:u 51 Mar 7 2016 /dev/dsk/c2d1s0 -> ../../devices/pci@0,0/pci-ide@1f,2/ide@0/cmdk@1,0:a 51 Mar 7 2016 /dev/dsk/c2d1s1 -> ../../devices/pci@0,0/pci-ide@1f,2/ide@0/cmdk@1,0:b 51 Mar 7 2016 /dev/dsk/c2d1s10 -> ../../devices/pci@0,0/pci-ide@1f,2/ide@0/cmdk@1,0:k 51 Mar 7 2016 /dev/dsk/c2d1s11 -> ../../devices/pci@0,0/pci-ide@1f,2/ide@0/cmdk@1,0:l 51 Mar 7 2016 /dev/dsk/c2d1s12 -> ../../devices/pci@0,0/pci-ide@1f,2/ide@0/cmdk@1,0:m 51 Mar 7 2016 /dev/dsk/c2d1s13 -> ../../devices/pci@0,0/pci-ide@1f,2/ide@0/cmdk@1,0:n 51 Mar 7 2016 /dev/dsk/c2d1s14 -> ../../devices/pci@0,0/pci-ide@1f,2/ide@0/cmdk@1,0:o 51 Mar 7 2016 /dev/dsk/c2d1s15 -> ../../devices/pci@0,0/pci-ide@1f,2/ide@0/cmdk@1,0:p 51 Mar 7 2016 /dev/dsk/c2d1s2 -> ../../devices/pci@0,0/pci-ide@1f,2/ide@0/cmdk@1,0:c 51 Mar 7 2016 /dev/dsk/c2d1s3 -> ../../devices/pci@0,0/pci-ide@1f,2/ide@0/cmdk@1,0:d 51 Mar 7 2016 /dev/dsk/c2d1s4 -> ../../devices/pci@0,0/pci-ide@1f,2/ide@0/cmdk@1,0:e 51 Mar 7 2016 /dev/dsk/c2d1s5 -> ../../devices/pci@0,0/pci-ide@1f,2/ide@0/cmdk@1,0:f 51 Mar 7 2016 /dev/dsk/c2d1s6 -> ../../devices/pci@0,0/pci-ide@1f,2/ide@0/cmdk@1,0:g 51 Mar 7 2016 /dev/dsk/c2d1s8 -> ../../devices/pci@0,0/pci-ide@1f,2/ide@0/cmdk@1,0:i 51 Mar 7 2016 /dev/dsk/c2d1s9 -> ../../devices/pci@0,0/pci-ide@1f,2/ide@0/cmdk@1,0:j 

另外,也许是有用的,请注意我已经从media_pool物理断开第二个镜像驱动器。 (导入不支持Live CD上的两个驱动器或原始安装)。

 # format Searching for disks...done AVAILABLE DISK SELECTIONS: 0. c2d1 <WDC WD15- WD-xxxxxxxxxxx-0001-1.36TB> /pci@0,0/pci-ide@1f,2/ide@0/cmdk@1,0 1. c3d0 <WDC WD10- WD-xxxxxxxxxxx-0001-931.51GB> /pci@0,0/pci-ide@1f,2/ide@1/cmdk@0,0 2. c3d1 <WDC WD10- WD-xxxxxxxxxxx-0001-931.51GB> /pci@0,0/pci-ide@1f,2/ide@1/cmdk@1,0 

rpool是solaris所在的地方。

 NAME SIZE ALLOC FREE CAP DEDUP HEALTH ALTROOT rpool 928G 28.3G 900G 3% 1.00x ONLINE - 

下面的答案是一个解决方法。 正确的答案应该解决为什么zpool import不正确地导入池,尽pipezbd拿起LABEL 0但不能正确读取它。


一切都没有丢失。 将其中一个镜像驱动器粘贴到另一台计算机上,从Solaris 11.3 LiveCD启动(或者至less具有类似zfs版本的操作系统版本)。

zpool import media_pool在另一个盒子上成功。 现在将其导出。
zpool export media_pool

在原始机器上清除/etc/zfs/zpool.cache。 关机。 删除第二个镜像驱动器。 插入原始镜像驱动器(从上一步导出的驱动器在另一个盒子上)。 重新启动机器并导入池。