壊れかけたHDDの緊急サルベージ(ddrescueコマンド)

HDDが冗長性(CRC)エラーで読めない!Windowsで認識されなくなった!そんな時の復旧方法。

2019年に試した方法ですので現在はもっと良い方法があるかもしれません。

具体的な方法だけ手っ取り早く知りたい方はこちら

事前準備をする場合は別のPCで行うか、問題があるHDDを外してから行います。

  1. Ultimate Boot CD
    • Download UBCDよりISOイメージをダウンロード
    • 光学メディアに書き込み(約700MBなのでCD-Rで可能です)
  2. BIOSやUEFIにてCDドライブから起動するよう設定
  3. 電源OFF

ここからは問題のあるHDDと救助したいデータを移す新しいHDDを接続して行います。

破損のある可能性があるHDD(A)…バックアップ元
(A)よりも大容量の新しいHDD(B)…バックアップ先

  • (A)(B)それぞれをSATA接続(転送速度の関係上USB接続などはしない方が無難)
  • 誤指定防止のために極力関係のないHDDは接続しない

1.CDドライブから起動

2.「Parted Magic」を選択

3.「Default setting」を選択

4.左上「File Manager」からディスクの番号を確認
例)/dev/sda、/dev/adb など

5.タスクバー左下ターミナル(黒いディスプレイに$_と書いてあるアイコン)をクリック

6. 4で確認したドライブ名、ログファイル作成先と共にコマンド入力後Enter

【コマンドラインの意味】
    -d  ダイレクトアクセス(キャッシュを介さずにアクセス)
    -f  出力先に対して強制的に上書き(必須)
    -n  リードエラーを無視
    -r$    不良セクタの読み込み試行回数
        (-r1なら一回、r2なら2回。-r-1指定は読み出せるまで無限回試行)
    -v  詳細表示

【ログファイル】
    ログを残しておくと中断や再試行の際にリジューム可能。指定しておくべき。
    例)/media/System/ddrescue/rescue.log など。Windowsでも読める場所が便利。

【中断】
    コピーを中断したい場合は、「Ctrl」キー+「C」キー
ddrescueコマンドが動き出し、喜びに震えるorep。
壊れた2台のうち1台は通りました。

「ddrescue」の使い方 – PCと解
故障してそうなディスクからデータを取り出す方法(ddrescue) – Qiita