外付けHDDを頑張って修復しようと試みた記録

本記事は知人から渡された外付けHDDの修理奮闘記である。
テレビ番組の録画に使っていた外付けHDDが急に故障したとのことで、どうにかならないかと相談を受けたのがスタート。

やったことは、

・Linux上でのHDD修復チャレンジ
・復旧ソフトウェアを利用したデータのサルベージ
・HDDの再フォーマットとサルベージデータの再コピー

である。

注:本記事の理解のためにはLinuxのコマンドラインの知識が必要となります。ご了承ください。

0.状況確認

とりあえず自分のWindows PCに指してみると、

「フォーマットする必要があります、フォーマットしますか。」というエラーが表示された。なるほどストレージのなにがしかが壊れているらしい。

ということでエラーチェックを実行。以下のサイトの内容を順番に実施した。

そしてchkdskを実行したところ、次のエラーが表示された。

ファイル システムの種類は RAW です。
RAW ドライブに CHKDSK は使用できません。

どうもファイルシステムが破損しているらしい。
ファイルシステムというのはコンピュータがファイルを操作するための仕組みのことであり、これが破損しているということはコンピュータからファイルを読み込めないことを意味している。

ただし、不幸中の幸いとしてはHDDが物理的に破損していたわけではないということ。もしかすると中のデータは取り出せるかもしれない。
更に、このHDDのフォーマット形式はXFSという形式であり、Linux用のファイルシステムであった。
ここから、Linux上でHDDを読み込めばデータがサルベージできるのではないかと考えた。

1.Linux上でのHDD修復チャレンジ

まずはLinuxを導入するところから。ただし、普段使いのWindowsと干渉させたくない(Windowsを消すリスクは負いたくない)ため、今回はUSBメモリにLinuxのOS情報を書き込みそこから起動できるようにした。いわゆるブータブルディスクを作成した。

参考にしたのはこちら。今回はUbuntu 20.04.1 LTSを導入することにした。

インストールし、Ubuntuから問題のHDDを読み込もうとする。が、正しくマウントされない。やはりファイルシステムが破損しているようだ。

Ubuntuに標準で入っている「GParted」というアプリケーションを使用して、元のファイルシステムがXFSであることの確証は取れたため、修復できないかを調べることにした。結果、「xfs_repair」というコマンドが存在していることを突き止められたので、そのまま実行することにした。

ちなみにこのコマンドにはroot権限が必要となる。ブータブルディスクの場合は以下のコマンドでrootに入れる。

sudo -i

満を持してxfs_repairコマンドを実行。結果は……

could not find valid secondery superblock

はて、先人はこのコマンドで修理を行えている。明らかにエラーにしか見えない結果となっているため、念のため調べてみると、

ccording to multiple Google results which mention "xfs_repair could not find valid secondary superblock" your filesystem is dead and you should recover files from backup.

https://unix.stackexchange.com/questions/603771/xfs-repair-dev-sdb-could-not-find-valid-secondery-superblock

your filesystem is dead―おしまいである。Linuxコマンドを使って復旧できると思っていたが、残念ながら今回の事態はそこまで甘くなかったらしい。

知人曰く、多少の金銭は負担するからやれるだけのことはしてほしいとのことだったため、ファイル復旧ソフトウェアを利用することにした。



2.復旧ソフトウェアを利用したデータのサルベージ

今回使用したのは「復旧天使」というソフトウェアである。Windows版を利用したが、MacやLinux版も発売されている。

正直なところこのソフトウェアを選んだ理由がある訳でもないのだが、

・データ復旧サービスの会社が販売しているソフトウェア
・日本語に対応している

ということが決め手となった。ちなみに今回利用したのはStandardライセンスであり税込み7,700円。1年間使いきりのライセンスなので似たようなことがあった時にまた使えるかもしれない。

使い方は流石に有償ソフトウェアなだけあってしっかりマニュアルがまとまっていた。画面の操作に従ってスキャンすること数時間、故障したHDDの中に入っていたファイルを発見することができた。すかさず別の外付けHDDにコピーしてサルベージ。


3.HDDの再フォーマットとサルベージデータの再コピー

最後に故障したHDDを再フォーマットしてデータを再度ダウンロードした。
ファイルシステムの関係で再びUbuntuを起動。
実施したことはいたって単純で、

①HDDをフォーマット
②フォーマットしたHDDをマウント
③サルベージ先のHDDからコピー

である。マウントとコピーは探せば簡単に出てくるはずなので、フォーマットのコマンドだけ載せておく。

 sudo mkfs.xfs -f /dev/sdb1

ちなみにマウントをrootで行っている関係で、コピーもroot権限で行う必要があることにだけ留意されたい。



4.おわりに

ということでデータのサルベージが無事にできた。有償ソフトを使うことになったのは想定外だったが、この記事を参考にしている人はLinuxコマンドの実行でどうにかなるのかもしれないと考え、記録した次第である。方法の調査目的でこの記事にたどり着いた人が無事にデータを復旧できることを祈ってやまない。

まだHDDの動作確認ができていないため、これで成功したのかどうかはまだわからない。動画ファイルをWindows上で再生できなかったのも懸念点。とはいえこれ以上できることもないため、今回何をしたのかの記録も兼ねてここに記す。



この記事が気に入ったらサポートをしてみませんか?