ZFS导入无法find任何池

我有一个ZFS池 – 一个包含2个vdevs的镜像 – 在FreeBSD服务器上运行。 我现在只有一个来自镜像的磁盘,我试图从中恢复文件。

ZFS数据位于磁盘上的GPT分区中。

当我尝试导入池时,没有任何迹象表明它存在。 我尝试了一些方法,但没有任何反应。

我已经在分区上运行zdb -lu ,并且似乎find了标签。

 # zpool import # zpool import -D # zpool status no pools available # zpool import -f ztmp cannot import 'ztmp': no such pool available # zpool import 16827460747202824739 cannot import '16827460747202824739': no such pool available 

分区信息:

 # gpart list da0 Geom name: da0 modified: false state: OK fwheads: 255 fwsectors: 63 last: 3907029134 first: 34 entries: 128 scheme: GPT Providers: 1. Name: da0p1 Mediasize: 65536 (64K) Sectorsize: 512 Stripesize: 0 Stripeoffset: 17408 Mode: r0w0e0 rawuuid: d7a10230-8b0e-11e1-b750-f46d04227f12 rawtype: 83bd6b9d-7f41-11dc-be0b-001560b84f0f label: (null) length: 65536 offset: 17408 type: freebsd-boot index: 1 end: 161 start: 34 2. Name: da0p2 Mediasize: 17179869184 (16G) Sectorsize: 512 Stripesize: 0 Stripeoffset: 82944 Mode: r0w0e0 rawuuid: d7aa40b7-8b0e-11e1-b750-f46d04227f12 rawtype: 516e7cb5-6ecf-11d6-8ff8-00022d09712b label: (null) length: 17179869184 offset: 82944 type: freebsd-swap index: 2 end: 33554593 start: 162 3. Name: da0p3 Mediasize: 1905891737600 (1.7T) Sectorsize: 512 Stripesize: 0 Stripeoffset: 82944 Mode: r0w0e0 rawuuid: d7b6a47e-8b0e-11e1-b750-f46d04227f12 rawtype: 516e7cba-6ecf-11d6-8ff8-00022d09712b label: (null) length: 1905891737600 offset: 17179952128 type: freebsd-zfs index: 3 end: 3755999393 start: 33554594 Consumers: 1. Name: da0 Mediasize: 2000398934016 (1.8T) Sectorsize: 512 Mode: r0w0e0 

ZFS标签:

 -------------------------------------------- LABEL 0 -------------------------------------------- version: 5000 name: 'ztmp' state: 0 txg: 0 pool_guid: 16827460747202824739 hostid: 740296715 hostname: '#############' top_guid: 15350190479074972289 guid: 3060075816835778669 vdev_children: 1 vdev_tree: type: 'mirror' id: 0 guid: 15350190479074972289 whole_disk: 0 metaslab_array: 30 metaslab_shift: 34 ashift: 9 asize: 1905887019008 is_log: 0 create_txg: 4 children[0]: type: 'disk' id: 0 guid: 3060075816835778669 path: '/dev/gptid/d7b6a47e-8b0e-11e1-b750-f46d04227f12' phys_path: '/dev/gptid/d7b6a47e-8b0e-11e1-b750-f46d04227f12' whole_disk: 1 DTL: 5511 resilvering: 1 children[1]: type: 'disk' id: 1 guid: 3324029433529063540 path: '/dev/gptid/396a2b11-cb16-11e1-83f4-f46d04227f12' phys_path: '/dev/gptid/396a2b11-cb16-11e1-83f4-f46d04227f12' whole_disk: 1 DTL: 3543 create_txg: 4 resilvering: 1 features_for_read: create_txg: 0 Uberblock[0] magic = 0000000000bab10c version = 5000 txg = 0 guid_sum = 1668268329223536005 timestamp = 1361299185 UTC = Tue Feb 19 10:39:45 2013 

(其他标签是精确的副本)

在这个旧线程中有一个类似的冠冕堂皇的问题的讨论。 我尝试了运行Jeff Bonwick的labelfix工具(从这篇文章的更新),但似乎没有解决问题。

有任何想法吗?

来自评论 (来自开放海报):

我在我的FreeBSD安装过程中编辑了ZFS源代码,并且绕过了所有的理智检查。 禁用足够的这些,我设法得到import的池。

以供将来参考,只需要执行zpool import -a(将search所有内容),当zpool / zfs fs无法识别时通常也会有所帮助。