FileFix Ultimate
日本語

別のディスクに diskpart clean を実行した時のファイル復元方法

間違ったディスクに diskpart clean を実行しても、ファイルは残っていることがよくあります。clean コマンドが消すのはパーティション表とディスクの先頭・末尾のわずかな領域で、その間のパーティションには触れません。例外はすべてのセクターにゼロを書く clean all です。何かをする前に、どちらが実行されたかを確認してください。

最終更新:

今すぐ行うこと

  1. ディスクの初期化、パーティションの作成、そのディスクへの diskpart コマンドの追加実行はしないでください。
  2. 数秒で終わる clean だったのか、数時間かかる clean all だったのかを確認します。
  3. 物理ディスク全体から失われたパーティションを読み取り専用で探し、ファイルは別のディスクに保存します。

手順

  1. 手を止めてディスクをそのままにする

    exit で diskpart を終了します。ディスクの管理を開くと、そのディスクは不明・初期化されていませんと表示され、初期化を求められることが多いです。この画面はキャンセルしてください。初期化すると新しいパーティション表が書かれ、続けてパーティションを作ると新しいファイルシステムまで書かれます。

  2. コマンド画面をさかのぼって確認する

    画面がまだ開いていれば、list disk の結果に各ディスクの番号とサイズが残っています。実際にどのディスクが選ばれたか、容量はいくつかが分かり、後で正しいパーティションを見分ける助けになります。SSD かハードディスクかもメモしておきます。

  3. clean か clean all かを見極める

    どちらもディスクのクリーンに成功したという同じメッセージで終わります。clean はほぼ一瞬で終わりますが、clean all は全セクターを上書きするため、大容量のハードディスクでは何時間もかかります。最後まで終わっていればデータは失われ、途中で止めたなら到達済みの範囲だけが失われています。

  4. FileFix Ultimate を管理者として起動する

    クリーンされたディスクに何も書かれないよう、USB メモリや別のドライブからポータブル版を起動します。パーティションのないディスクを読むには管理者権限が必要です。

  5. 物理ディスクからパーティションを探す

    削除ファイルの復元で、クリーンされたディスクを物理ディスクとして選びます。アプリは NTFS・FAT32・exFAT などのブートセクターと、各パーティション末尾の NTFS バックアップブートセクターを探し、見つかったパーティションを開始位置・サイズ・ファイルシステムとともに一覧にします。

  6. 正しい候補をスキャンする

    覚えているディスク構成とサイズが合う候補を選び、それぞれバランス スキャンを実行します。パーティションが一つも見つからない場合は、ディスク全体に詳細シグネチャスキャンを実行します。名前は戻りませんが、中身は戻る可能性があります。

  7. すべて別のディスクに保存する

    別の物理ディスクに復元し、クリーンされたディスクにパーティションを作り直したり再利用したりする前に結果を確認してください。

clean と clean all の違い

Microsoft のドキュメントによると、clean は選択したディスクからすべてのパーティションとボリュームの書式を削除します。MBR ディスクでは MBR のパーティション情報と隠しセクターを、GPT ディスクでは保護 MBR を含む GPT のパーティション情報を上書きします。実際には先頭と末尾のおよそ 1MB だけをゼロにすることが多く、GPT ディスクでは末尾の予備の表も消えます。

Windows は通常、最初のパーティションを 1MB の位置から始めるため、各パーティションのブートセクターとその後ろのデータはたいてい無傷です。そのため、失われたパーティションの検索ですべてのパーティションが見つかることがよくあります。一方 clean all は全セクターにゼロを書き込む別のコマンドで、完了していればどのソフトや復旧業者でもデータは戻せません。

間違ったディスクが選ばれてしまう理由

よくあるのは USB メモリや新しいドライブを準備している最中です。list disk にディスク 0、1、2 が並び、サイズが似ているため select disk で番号を誤ります。ディスク番号は再起動やドライブの抜き差しで変わることがあり、以前メモした番号が今は別のディスクを指している場合もあります。

Windows は起動中のシステムディスクの clean を拒否するので、PC が普通に起動するならシステムディスクは消されていません。危険が大きいのは Windows インストーラーのコマンドプロンプトで、そこでは内蔵ディスクが使用中でないため、何の警告もなくクリーンできてしまいます。

SSD の場合

SSD では、clean によってディスク全体への TRIM が送られることがあります。するとドライブが内部ですべてのブロックを消去し、スキャン結果はゼロばかりになることがあります。実際にそうなるかはドライブ、接続方式、Windows のバージョンによるため、スキャンする価値はあります。FileFix Ultimate はゼロだけの結果を空のファイルとして保存せず、復元の見込みが低いと表示します。

復元できない場合

  • clean all が最後まで実行され、全セクターがゼロで上書きされた場合。
  • SSD で、clean の後に TRIM がドライブ全体を消去した場合。
  • ディスクを初期化し、パーティションを作ってフォーマットし、新しいデータをコピーした場合。
  • クリーンされたディスクに Windows などの OS をインストールした場合。
  • パーティションが ReFS、APFS、または RAID 6・RAID 10 の一部だった場合。これらは解析対象外です。

FileFix Ultimate でできること

  • クリーンされたディスクを読み取り専用で読み、パーティション表やブートセクターなどを一切書き込みません。
  • バックアップのブートセクターも使い、物理ディスク全体から失われた NTFS・FAT32・exFAT・ext4・HFS+ パーティションを探します。
  • パーティション構造が残っていなければ、68 種類のシグネチャで詳細シグネチャスキャンを行います。
  • 読み取りエラーがあるディスクは、先にドライブイメージを作ってイメージをスキャンできます。
  • 個人利用は無料で復元量の制限がなく、USB メモリからポータブルで動きます。

FileFix Ultimate は個人利用なら無料で、オフラインで動作し、復元元のドライブには書き込みません。業務利用にはPC 1台ごとに1年間のライセンスが必要です。実行前に署名を確認してください。

よく寄せられる質問

diskpart clean を取り消すコマンドはありますか?

ありません。diskpart には元に戻す機能がありません。ディスクを検索してパーティションを見つけ、ファイルをコピーできることは多いですが、diskpart の中でコマンドを取り消す方法はありません。

クリーンに成功したと表示されました。データはすべて消えたのですか?

そうとは限りません。clean と clean all は同じメッセージを出します。大事なのはかかった時間で、1〜2 秒で終わったなら消えたのはパーティション表で、データではありません。

ファイルをコピーする代わりに、元のパーティション表を戻せませんか?

パーティション修復ツールは見つかったパーティションから表を書き直せますが、推測を誤ると新たな損傷につながります。大切なファイルを先に別のディスクへコピーしておけば、その後に表を戻す試みはほとんど危険がありません。

clean all を数分で止めました。何が残っていますか?

clean all はディスクの先頭から順に書き込むため、最初のパーティションとそのファイルシステムの記録があった前方はゼロになっている可能性が高いです。後方のデータは残っていることがあり、多くの場合は名前なしで詳細シグネチャスキャンにより見つかります。

このページを共有