コンテキスト/ハードウェア:
HPマイクロサーバーgen8
1x1TB-スタンドアロン、2x4TBレイド
Debian + OpenMediaVaultを搭載した1x16GBのiLOSDCARD
イベント:
SDCARDの障害
サーバーを再起動し、1TBドライブにUbuntuをインストールしました
結果:
ZFSにアクセスできなくなりました
root@fremen:~# Sudo lsblk -o NAME,FSTYPE,SIZE,MOUNTPOINT,LABEL
NAME FSTYPE SIZE MOUNTPOINT LABEL
sda zfs_member 931,5G
└─sda1 ext4 931,5G /
sdb zfs_member 3,7T
└─sdb1 zfs_member 3,7T
sdc zfs_member 3,7T
└─sdc1 zfs_member 3,7T
sdd 5,7G
root@fremen:~# zpool import -D -f
no pools available to import
root@fremen:~# file -s /dev/sd?1
/dev/sda1: Linux rev 1.0 ext4 filesystem data, UUID=9c46f52c-b529-4c39-a23b-819726f79146 (needs journal recovery) (extents) (64bit) (large files) (huge files)
/dev/sdb1: data
/dev/sdc1: data
ディスクはまだZFSプールにあるようですが、データにアクセスできません。
この状況で何をしますか?これは友人の設定であり、リモートでマシンに接続できます。 ZFSボリューム上のデータが破壊されるため、新しいプールを作成したくありません。ディスク上にプールが見つからないため、zdbを使用できません。
MichaelHamptonのコメントがこれに対する解決策でした。
実際、OMVはZFSをまったく使用せず、ドライブをZFSメンバーとしてマークしただけでした。
ドライブの1つを追加し、イメージでtestdiskを実行しました。ディスク上に0x0700パーティションがあることが判明しました。 testdiskを使用して新しいパーティションテーブルを作成し、ループにマウントしました。ジャーナルが破損しているext4パーティションであることが判明しました。エラーを修正した後、私はすべてのデータを回収することができました。したがって、私は物理ディスクで同じことを行い、データを取り戻しました。