プールを再作成して回復せずに、2つの失敗したSLOGデバイスを持つZFSプールから回復しますか?

プールを再作成して回復せずに、2つの失敗したSLOGデバイスを持つZFSプールから回復しますか?

誤ってミラーの両側を同じ物理デバイスに割り当てました。ドライブにエラーが発生し、複数の失われたファイルを修復しました。

プールはこんな感じです。

# uname -a
FreeBSD nas.d20int.d20hobbies.com 13.1-RELEASE-p3 FreeBSD 13.1-RELEASE-p3 GENERIC amd64
# zpool version
zfs-2.1.4-FreeBSD_g52bad4f23
zfs-kmod-2.1.4-FreeBSD_g52bad4f23
# zpool status tank
  pool: tank
 state: DEGRADED
status: One or more devices has experienced an error resulting in data
    corruption.  Applications may be affected.
action: Restore the file in question if possible.  Otherwise restore the
    entire pool from backup.
   see: https://openzfs.github.io/openzfs-docs/msg/ZFS-8000-8A
  scan: scrub repaired 0B in 1 days 12:42:12 with 0 errors on Mon Dec  5 01:40:59 2022
remove: Removal of vdev 3 copied 92K in 0h0m, completed on Sun Nov  7 17:33:13 2021
    96 memory used for removed device mappings
config:

    NAME                      STATE     READ WRITE CKSUM
    tank                      DEGRADED     0     0     0
...
    logs
      mirror-4                UNAVAIL      0     0     0  insufficient replicas
        17044230459986981390  UNAVAIL      0     0     0  was /dev/nvd1p1
        6464196606234086602   UNAVAIL      0     0     0  was /dev/nvd1p2

このコマンドは次のエラーを生成します。

# zpool detach tank 17044230459986981390
cannot detach 17044230459986981390: no valid replicas
# zpool remove tank 17044230459986981390
cannot remove 17044230459986981390: operation not supported on this type of pool
# zpool remove tank mirror-4
cannot remove mirror-4: Mount encrypted datasets to replay logs.

これプールが暗号化されていません。。間違いは間違いです。このオプションは、sysctl vfs.zfs.zil.replay_disable=1カーネルメッセージバッファに表示されない他の.kstat.zfs.misc.dbgmsg関連のエラーを生成しません。再起動しても問題はありませんでしたが(正常に戻る)、問題は解決しませんでした。

一つ開いたopenzfs チケットしかし、誰も答えなかった。

この問題をさらに解決する方法はありますか?または、復元せずに他の方法でSLOGを削除しますか?

ベストアンサー1

おすすめ記事