2017.09.03: 古くなった情報の削除、情報や手順をまとめなおして大幅改稿
2014.06.25: CHKDSKでSSDの予備領域が減ってしまう可能性がある旨を追記。
2013.07.07: 初出
Windows 10 / 8.1 / 7 で「システムイメージの作成」を実行した際、「エラー 0x8078012D」と「エラー 0x8007045D」が発生し、システムイメージの作成に失敗してしまう場合の対処方法を紹介したページです。
エラー発生時の画面
バックアップに失敗しました。
ソースまたはターゲットのデバイスエラーのため、操作に失敗しました。ソースボリュームやターゲットボリュームがディスク上にある場合、そのボリュームで CHKDSK /R を実行してから操作を再試行してください。(0x8078012D)
追加情報:
I/O デバイス エラーが発生したため、要求を実行できませんでした(0x8007045D)
このページの対象PC
Windows 10 / 8.1 / 7
※注意
Windows 10 バージョン1709 (Fall Creators Update) 以降は、システムイメージバックアップ機能の利用は非推奨となる予定です。今後はサードパーティーベンダーのバックアップツールを利用するようにしましょう。
エラー 0x8078012D / 0x8007045Dの原因
「エラー: 0x8078012D / 0x8007045D」のおもな原因は、以下となります。
- バックアップ元のディスクに異常が発生している。
- バックアップ先のディスクに異常が発生している。
- 外付けHDDを利用しており、HDDをしっかり固定していない。
- バックアップ元 と バックアップ先のディスクの規格が違う、という場合でも稀に発生する。
- ディスクの読み込み速度、書き込み速度が極端に低下 (PIO病とかか?) している場合も発生する(場合がある)。
エラーの原因や対象となる症状の紹介ここまで。
以下、対処方法の紹介です。
対処方法
- バックアップ元(Cドライブ) とバックアップ先 のディスクの規格 (AFT / 非AFT) を同じにしてみる。バックアップ先をDVD-RやBD-Rにしてみる。
- バックアップ元(Cドライブ) とバックアップ先 のディスクに不良セクタが存在しないか確認する。
- 不良セクタが発見されたディスクに対し「CHKDSK /R」を行う。
- その他補足情報
- Windows7の場合、4Kネイティブ規格のディスクにシステムイメージのバックアップを作成する事はできません。
※ この場合は エラー 0x8078002A / 0x8007045D が表示されます。
- Windows7の場合、4Kネイティブ規格のディスクにシステムイメージのバックアップを作成する事はできません。
エラーメッセージにも書いてある通り、多くの場合、問題が発生している ボリューム (Cドライブやバックアップ先のディスク) に対して「CHKDSK /R」が必要です・・・・が、ここまで読んだだけででいきなり「CHKDSK /R」を実行しないでください。
以下、実際に CHKDSK /R を行う手順を説明しますが、その前にいくつかの注意事項を紹介します。これらを知らずに CHKDSK /Rすると、後で大変な目に合う (かもしれない) ので注意しておきましょう。
注意事項
注意その1 - CHKDSK /R は ディスクにかける負担が非常に大きい
- 故障寸前になっている HDD や SSD に対して CHKDSK /R をかけると、HDD や SSD の寿命を縮めたり、そのまま故障してしまうケースがあります。
- CHKDSK がどのような修復を行うのか、どのような危険性があるのかを知りたい場合は、「PCと解」さんが参考になります。
「chkdsk」と修復オプション - PCと解
- CHKDSK がどのような修復を行うのか、どのような危険性があるのかを知りたい場合は、「PCと解」さんが参考になります。
- CHKDSK /R を行う前に、まずディスクの「健康状態」のチェックを行い、その上でCHKDSK /F (またはオプションなし) などの「/R」よりも負担の少ない CHKDSK を行い、まずはエラーの有無のみを確認しておきましょう。
- ディスクの健康状態のチェックには、CrystalDiskInfo がおすすめです。
- CrystalDiskInfo
- 公式ページ: CrystalDewWorld
- サイト内解説ページ:
HDDやSSDの「健康状態」診断・監視ソフト CrystalDiskInfoの使い方
- CrystalDiskInfo
- 大切なデータのバックアップを行っておきましょう。
- CHKDSK /Rでディスクが故障してしまう事態に備えておきましょう。
- CHKDSK /R が必要なディスク場合、ディスクのアクセス速度が極端に遅くなっていたり、一部のデータが バックアップできない場合があります。
- 読み込みの出来ないデータは諦めるか、ファイナルデータなどの有償ソフトでバックアップしてみましょう (必ずバックアップできる、という訳ではありません)
注意その2 - CHKDSK /R で修復作業が行われると、修復した箇所のデータは戻って来ない
- CHKDSK /Rの修復は HDD / SSD の 読み書きが出来なくなった部分 (不良セクタ) を検出し、そこを「使えなくなった領域」とマークして以後そのセクタを利用しないようにします。
- つまり、CHKDSK で修復されたセクターに保存されていたデータは復旧できなくなります。(RAID1またはRAID5 の場合は復旧できるケースあり)
注意その3 - CHKDSK /R の前に「sfc /scannow」「DISM」「システムの復元」は実行しない
- 重要項目です。
CHKDSK /R の前に「sfc /scannow」や「DISM /Online /Cleanup-image /Restorehealth」、「システムの復元」を実行しないようにしましょう。 - 不良セクタ、不良クラスタが Windowsのシステムファイルに発生している場合、これらのコマンドでWindowsの状態がさらに悪化するケースがあります。
注意その4 - CHKDSK /R は、エラーがなくなるまで繰り返す
- ここまでは「CHKDSK /R は危険である」ことを強調してきましたが、エラー 0x8078012D / 0x8007045D を解消するには、基本的に CHKDSK /R の実行が必須です。
- しかも、「CHKDSK /R」は1回で全てのエラーを修復できるとは限りません。
エラーがなくなるまで、何度も CHKDSK /R を繰り返さなければならないケースがあります。
- ※手元のPCでエラー 0x8078012D / 0x8007045D が発生した時の記録
- CHKDSK /R C:1回目
- 発見されたバッドクラスタは5つ。
しかし修復されたのは1つ。
- 発見されたバッドクラスタは5つ。
- CHKDSK /R C:2回目
- 修復されたバッドクラスタは2つ
前回と合わせ、修復されたクラスタは合計3つ
- 修復されたバッドクラスタは2つ
- CHKDSK /R C:3回目
- さらに1つのファイルが修復された。のこり1つ
- CHKDSK /R C: 4~5回目
※スクリーンショットなし。
- 4回目で最後の1つが修復された
- 5回目でエラーが出なくなった。
- この時は「CHKDSK /R」1回につき1~2個のバッドセクタしか修正されず、計4回の CHKDSK /R が必要でした。
(5回目の CHKDSK /R でエラーが出なくなり、その後「システムイメージの作成」で エラー0x8078012D と 0x8007045D が発生しなくなりました。)
- CHKDSK /R C:1回目
- ※手元のPCでエラー 0x8078012D / 0x8007045D が発生した時の記録
さらに注意: SSDの場合、CHKDSK /R で一気に寿命が縮む場合がある
- SSDの場合、CHKDSK /R で不良セクタを検出した際、「SSDの予備領域」を代替セクタに利用する場合があります。このような場合、「CHKDSK /R を使った復旧」は諦めましょう。(そのSSDはローレベルフォーマットなどを行った上で再利用するのが望ましいです)
- 参考: SSDの予備領域を大量に食いつぶされた例
▲クリックで拡大
健康状態は「青」ですが、赤枠の部分が CHKDSK /R で急激に悪化しました。 - 手元のPCで SSD に CHKDSK /R した時の記録
-
2013年7月にSSDに異常が発生した時
・・・・CHKDSK /Rでも予備領域が減らなかった
不良セクタの原因: ウイルス感染が原因。Cドライブにバッドセクタを埋め込まれてしまった。 -
2013年10月にSSDに異常が発生した時
・・・・CHKDSK /Rで予備領域が大幅に減ってしまった
不良セクタの原因: SSDのアクセスランプが点滅中に不用意にPCを強制リセットしてしまった。
-
2013年7月にSSDに異常が発生した時
- 参考: SSDの予備領域を大量に食いつぶされた例
- 覚えておく事
- 「CドライブがSSD かつ CHKDSK /R が必要な状態」かつ「CHKDSK /Rで予備領域が減る事を確認できた」場合は、SSDを交換してWindowsを再インストールするのが賢い選択です。
- CHKDSK /Rで予備領域が減る事を確認できたSSDは、それ以上 CHKDSK は行わず、バックアップできるデータを全てバックアップし、そのSSDは破棄してしまうか、ローレベルフォーマットまたは専用ツールでのリペアを実行してから再利用しましょう。
- 予備領域が大幅に減った後では、SSDのリペアツール や ローレベルフォーマット を行っても、予備領域が元に戻る事は無いようです。
- 参考リンク
代替セクタ(予備領域)が少なくなったSSDをローレベルフォーマットしてみる
注意点は以上です。以下、実際の手順です。
上記の注意点を踏まえ、最悪の場合 Windowsが起動しなくなる、大切なデータが一部失われてしまうケースがあることを覚悟して実行しましょう。
実際の手順
手順1. バックアップ対象となるボリュームを確認する
- 「システムイメージの作成」を行うと、途中で以下のダイアログが表示されます。
▲クリックで拡大
まずは、バックアップの対象となるドライブがいくつあるのかを確認します。
- この後の手順でバックアップの対象となるすべてのドライブで CHKDSKを行い、エラーのチェックを行う必要があります。
- マイドキュメントなどのユーザーフォルダを移動している場合、Dドライブなどもバックアップ対象に含まれるケースがあります
- 隠しドライブのエラーチェックは、後回しでも良いかと思われます。
手順2. HDD/SSDの規格を調べる
- HDD/SSDの規格を調べる方法
- コマンドプロンプト(管理者)で「fsutil fsinfo ntfsinfo」と入力する。
▲クリックで拡大
例えば上図のような結果が返る場合、そのディスクは AFT (512e) です。 - 詳しく解説したページ
HDDの512E、4Kセクター、AFT、非AFT、4Kネイティブ(4Kn)の違い
- コマンドプロンプト(管理者)で「fsutil fsinfo ntfsinfo」と入力する。
- バックアップ元とバックアップ先どちらか一方が AFT以前の (512 Native) なディスクである場合、システムイメージの作成が正常に実行できない事があります。
- 他にバックアップ用のディスクが用意できなのであれば、(Cドライブにエラーがない事を確認した後で) システムイメージの作成先を DVD-R や BD-R にしてみましょう。
- また Windows7 の場合、4Kネイティブ規格のディスクにシステムイメージのバックアップを作成する事はできません。注意しましょう。
手順3. CrystalDiskInfo でディスクの健康状態を調べる
- CrystalDiskInfo
- 公式ページ: CrystalDewWorld
- サイト内解説ページ:
HDDやSSDの「健康状態」診断・監視ソフト CrystalDiskInfoの使い方
- ここでのチェックポイント
手順4. CHKDSK /F (またはオプションなし) でディスクのエラーがないか調べる
- コマンドプロンプト (管理者)を起動し、以下を入力します
- ここで実行するコマンド
CHKDSK X: /F
または
CHKDSK X: (オプションなし) - 補足
「X:」はドライブレター(「C:」、「D:」など) - Cドライブに対して CHKDSK を行う場合、PCの再起動が必要です。
- 「オプションなし」・・・・エラーの検出のみ。修復なし
- 「/F」・・・・ファイルシステムのエラーを修復するだけ
- ここで実行するコマンド
- ここでは、エラーの検出のみが目的なので、「CHKDSK X: (オプションなし)」で十分です。これにより、問題が発生しているドライブを特定します。
- いずれのドライブからも問題が検出されなかった場合は、システム修復ディスクなどでPCを起動し、隠しパーティションに対して CHKDSK を行います。
(DISKPARTで隠しパーティションにドライブレターを振る必要があります)
- いずれのドライブからも問題が検出されなかった場合は、システム修復ディスクなどでPCを起動し、隠しパーティションに対して CHKDSK を行います。
- Windows上からチェックディスクを行う場合
▲クリックで拡大- 両方のチェックを外すと、エラーチェックのみ (エラー修正なし) が実行されます。
- Cドライブなど、システムに対しチェックディスクを行う場合は、OSの再起動が必要です。(OS起動前にチェックが入ります)
手順5. ディスクにエラーがなかった場合
- PIO病を疑ってみる(サイト内に解説ページなし)
- 電源オプションを「高パフォーマンス」に変更してみる
- 電源オプションの「詳細設定」で「次の時間が経過後ハードシスクの電源を切る」を「0」にしてみる。
- 電源オプションの「詳細設定」で「USBのセレクティブサスペンドの設定」を無効にしてみる。
- その他、ディスクアクセスが遅くなる (もしくは停止する) 原因を探り、問題を取り除いてみる
手順6. エラーを発見したボリュームに対し CHKDSK /Rを行う
- 上記までの手順で、ようやくCHKDSK /R を行う準備が整いました。
- chkdsk /r 中の画面
▲クリックで拡大 - 「CHKDSK /R X:」は、不良セクタをスキャンしてストレージの機能を回復させますが、不良セクタに含まれていたデータは復旧できなくなります。
- Cドライブに対して CHKDSK /R を実行する場合、どのファイルが修復されているかをしっかり確認しておきましょう。システムファイルが修復された場合、(そのファイルは利用できなくなるので) Windowsは正常に起動しなくなる恐れがあります。
- 手順9 でいくつかの対処方法を紹介しています
手順7. 再び CrystalDiskInfo でディスクの健康状態を調べる
- 「CHKDSK /R X:」後の CrystalDiskInfo の結果
▲クリックで拡大 - CHKDSK /R を行うと、不良セクタ を「利用できないセクタ」として認識させ修復するため、05、C4、C5、C6、C7、E8 などの値はかなり悪化します。
- 悪化の程度を自分で判断し、このまま CHKDSK /R を繰り返すか、問題のディスクを交換するかを選択します。
- 対象ディスクが SSD で、E8 (利用可能な予備領域) が悪化するような場合は、これ以上の CHKDSK /R は控え、ディスクの交換を行いましょう。
手順8. エラーが出なくなるまで CHKDSK /Rを行う
- CrystalDiskInfoの結果から「CHKDSK /R を繰り返しても問題なし」と判断した場合は、エラーが出なくなるまで CHKDSK /R を繰り返します。
- この時も、CHKDSK /Rを1回実行するたびに CrystalDiskInfo でHDD/SSD の健康状態をチェックしましょう。
手順9. CHKDSKでエラーを修復した後にやる事
- 念のため、「sfc /scannow」などでシステムの修復を行う。
ただし以下に注意
- システムファイル内にエラーが発見された場合は、「sfc /scannow」
- Repositoryフォルダ内のデータが壊れていた場合は「sfc /scannow」はやっちゃダメ。システムの復元でイメージを回復させる
- システムの復元が壊れていた場合は復元データは全部削除する
- 広範囲にわたってシステムが壊れていた場合はWindowsを再インストール、もしくは上書きインストールする。
手順紹介はここまで
これで、無事「システムイメージの作成」が正常作動するようになるはずです。
あとがき
このページは 2013年7月 および 2013年10月 に手元のPCで発生したトラブルを元に執筆しました。CHKDSK /R で 「予備領域を食いつぶすパターン」と「食いつぶさないパターン」の記憶があやふやになっていたため、新たにページを書き直した次第です。
その他メモ書き
- CHKDSK C: /Rにかかる時間
- SATA3対応のSSDは、128GBあっても CHKDSK C: /R が10~20分程度で済む。
- 1~2TBクラスのHDDのデータがパンパンに詰まっていると、 CHKDSK C: /R が終了するのに1~2日かかる場合もある。
- PC内に接続されたHDD、SSDを最新のファームに更新する。
- 最新ファームの確認は、使用しているHDD・SSDのメーカーサイトで確認する。
- 既に最新ファームの場合は、ディスクドライバの削除、再インストールを行ってみる。
- HDD、SSDのドライバを一旦削除し、再インストールする。
サイト内関連ページ
- Windowsのバックアップが正常に作動しない場合のチェックポイント
- Windowsのバックアップ機能を復活させるまでの悪戦苦闘のメモ
- 4Kセクタ(4Kネイティブ)なHDDにはWindows7のバックアップが出来ない
- システムイメージの作成 (エラー:0x80780119) 「バックアップに失敗しました」の対処方法 - その1
このページの情報は以上です。