切换选项(Ubuntu 19.10):

切换选项(Ubuntu 19.10):

一些用户在连接到池上的此服务器共享时遇到问题,而其他已登录的用户似乎没有问题。安排重新启动后,系统启动后池无法导入。

在重新启动过程中,我注意到 POST 期间驱动器出现故障,挡板上的橙色指示灯亮起,下方显示zpool import

该池有足够的设备可联机,但无法成功导入。

$ zpool import
   pool: darkpool
     id: 5743344949875332602
  state: DEGRADED
 status: One or more devices contains corrupted data.
 action: The pool can be imported despite missing or damaged devices.  The
    fault tolerance of the pool may be compromised if imported.
   see: http://zfsonlinux.org/msg/ZFS-8000-4J
 config:

    darkpool                      DEGRADED
      raidz3-0                    DEGRADED
        wwn-0x5000c5008581aafb    ONLINE
        wwn-0x5000c5008581b61b    ONLINE
        wwn-0x5000c5008581b79f    ONLINE
        wwn-0x5000c5008581b933    ONLINE
        wwn-0x5000c5008581b953    ONLINE
        wwn-0x5000c5008581bdf7    ONLINE
        wwn-0x5000c50085825ec7    ONLINE
        wwn-0x5000c5008581cc03    ONLINE
        wwn-0x5000c5008581e423    UNAVAIL
        wwn-0x5000c5008581fd3f    ONLINE
        wwn-0x5000c50085820b93    ONLINE
        wwn-0x5000c500858211b3    ONLINE
        wwn-0x5000cca267ab0de4    ONLINE
        spare-13                  DEGRADED
          11992420879588183985    FAULTED  corrupted data
          wwn-0x5000c500858252ef  ONLINE
    spares
      wwn-0x5000c500858252ef

$ zpool status
no pools available

$ zpool import darkpool
cannot import 'darkpool': I/O error
    Destroy and re-create the pool from
    a backup source.

$ zpool import -f darkpool
cannot import 'darkpool': I/O error
    Destroy and re-create the pool from
    a backup source.

$ zpool import -fFn darkpool

$ zpool import -F darkpool
cannot import 'darkpool': I/O error
    Destroy and re-create the pool from
    a backup source.

$ zpool import -fFX darkpool
cannot import 'darkpool': I/O error
    Destroy and re-create the pool from
    a backup source.

有人见过这样的事情吗?我不确定在销毁池并从备份中恢复之前该尝试什么(我想避免这种情况,因为它会花很长时间)。

看起来备份在几周前就开始出现故障了。有什么方法可以知道维修故障驱动器是否能让池子满意吗?

系统是 Ubuntu 18.04.2 LTS,带有 zfsutils-linux_0.7.5-1ubuntu16.7_amd64。

答案1

我最终注册了 LinkedIn Premium,这样我就可以给 ZFS 开发人员发消息(他真的很好心地回复了我!)。他建议我将池移至 ZFS 0.8 系统,他在 Github 上的相关提交包含在 Ububtu 19.10 和其他发行版中。

处于只读模式,我们可以通过禁用选项来加载池spa_load_verify_metadata。这也会跳过池的扫描,因此您不必等待几分钟或几小时(具体取决于池的大小)。

一旦池加载完毕,我便开始将所有内容备份到不同的服务器,并计划销毁池和服务器(戴尔的现场行程太多,更换了 CPU、内存、主板等...),然后重新开始使用新系统。


切换选项(Ubuntu 19.10):

$ cat /sys/module/zfs/parameters/spa_load_verify_metadata
1
$ echo 0 >/sys/module/zfs/parameters/spa_load_verify_metadata
$ cat /sys/module/zfs/parameters/spa_load_verify_metadata
0

加载池

zpool import -o readonly=on darkpool -f

重启后该标志将重置,因此池不会在启动过程中加载。但实际上你还是想复制数据并停止使用该池。

相关内容