取り外して再接続したドライブ アレイから ZFS プールをインポートするにはどうすればよいですか?

取り外して再接続したドライブ アレイから ZFS プールをインポートするにはどうすればよいですか?

これは、システムがクラッシュしていないため、クラッシュしたシステムからプールをインポートするのとは異なります。OS は正常です (別のプール/ドライブ セット/SATA バス上)。

再起動する前に、いくつかの重要なファイルをコピーしたいと思います (クライアントのサービスが不十分なリモート データセンターの近くに賢い人がいないため、クリーンな状態にならないようにするためです)。

この場合、USB キャディが消えて再接続されました (電源障害/不具合)。しかし、zfs はプールがマウントされたままであると認識しますが、プールへのすべての IO が切断され、sdd と sde が sdf と sdg になりました。

プールは /dev/disk/by-id によってマウントされましたが、もちろんこれらの ID は同じであり (/dev では現在 sd[fg] を指しています)、古いプールはエクスポートされていません。

すべての zpool コマンドは /dev/sdd と sde にアクセスしてシェル全体をハングさせると想定されるため、停止します (現在、スクリーン ウィンドウ内の 10 番目の bash シェルにあります)。

ただし、アレイはdd if=/dev/sdf1 of=/dev/null正常に動作し、iostat でそのドライブの IO が表示されます (sdg の場合も同様)。つまり、ドライブはウェッジなしで読み取り可能です。

しかし、zpool コマンドは、zpool import -Nd /dev/sdf1 poolname newpoolnamesd[de] ワールドのどこかの何かに触れて、ウェッジします。

他のドライブに絶対にアクセスしないようにするには、どの zpool import コマンドを実行すればよいですか? zpool import -d /dev/sdf1 -N newname(または 'oldname newname') 単にウェッジします。

最後の手段としては、ドライブ全体を別のシステムに dd して raw イメージとして保存し、そこで zpool を操作する (ループ デバイス経由) という方法がありますが、4 TB の送信には非常に時間がかかります。

関連情報