続データのサルベージ
先日の雷で壊れたハードディスクからデータベースのデータをどうやって取り出すかについて、今週の月曜日からずっと試行錯誤を繰り返しています。
「dd」コマンドで壊れている部分以外は全てコピーできて、後はファイルを取り出すだけだと思っていたら、壊れている部分はパーティションテーブルであることがわかりました。「パーティションテーブルが壊れている」ということは、HDDには「どこにどのファイルがあるか」という以前に、棚の場所がわからないという状態だということです。
そこから調べに調べました。そして、にわか知識だったパーティションの事やパーティショニング・ツールについてずいぶん詳しい知識が手に入りました。そこで、棚の位置を正確に教えてあげれば、ファイルをサルベージできるということがわかったのですが、僕にも棚の位置はわかりません。
そして、方々のサイトを歩き回って手に入れた情報を基に「gpart」というプログラムに到達しました。
結果的には、「gpart」というコマンドを試し、なんとかパーティションテーブルを復旧する事ができたので、各パーティションのマウントやファイルの取り出しもできるようになりました。
しかし、未だ全て解決したわけではありません。僕が使っているデータベースはPostgreSQLなのですが、これはバイナリーのデータから中身を取り出すのが大変そう。定期的なバックアップがあればいいのですが、無いからこんな事をしてるんだから、そういう議論はできないので、今度はOSを立ち上げる作業にシフトします。
次回が完結編となる事を期待しながら、今日は夜勤明けなので、早く帰って寝ます。
| 固定リンク
コメント