I/Oデバイス エラーが発生したため、要求を実行できませんでした

シナリオ

Windows Server 2003/2008/2012 (R2)/SBS 2003/2008/2011またはWindows 10/8.1/8/7/XP/Vistaで、バックアップを外付けHDDに実行する時、以下のエラーメッセージが発生するかもしれません:

  • バックアップファイルの1つを作成できませんでした。(0x8078002A)
  • I/Oデバイス エラーが発生したため、要求を実行できませんでした。( 0x8007045D)または(2147943517)
  • エラーコード2147943517(10進数)と0x8007045D(16進数)は、同じ「I/O デバイスエラー」を表します。

バックアップ失敗

原因

  • しばらくの間、バックアップが進行している時このエラーを受けた場合、バックアップのソースディスクまたは宛先ディスクに不良セクターがあるはずです。
  • バックアップは終了するところで、このエラーを受けた場合、ボリューム上の最後のクラスタが不良になったかもしれません。
  • 2Tより小さなHDDによく使われた512バイトセクターサイズじゃなくて、4Kセクターサイズを持っている大容量ドライブにバックアップするなら、このI/Oエラー0x8007045Dが、いくつかの古いWindowsバージョンのバックアップと復元のツールに発生するかもしれません。それらのWindowsバージョンは512バイトセクターに基づいての標準ファイルフォーマットを持っているためです。

ソリューション

一つまたはより多い手順を試してみて、HDDのI/Oデバイスエラーを修正するかもしれません:

1. バックアップのソースディスクと宛先ディスク上の不良セクターを修正します。

1.1. スタートをクリックし、あるいは「Win+R」を押して、ボックスに「cmd」を入力ます。そしてEnterを押します。管理者として、それを実行するべきです。

1.2. ポップアップしたコマンドプロンプトで、以下のコマンド「chkdsk X: /f /r」を入力して、Enterを押します。「X」はチェックしたいパーティションのドライブ文字を表します。「/f」はエラーを修正するコマンドを表します。「/r」は不良セクターを検索して、読み取り可能な情報を回復します。

1.3. このプロセスが完了した後、再起動して、バックアップタスクを再試行してください。

2. 最後のクラスタを他の場所に移動するために、パーティションを縮小、または拡張して、「chkdsk」を再び実行します。「ディスクの管理」で、縮小したいパーティションを右クリックして、「ボリュームの縮小」をクリックします。そして、ポップアップしたボリュームの縮小のウィザードに従って、処理します。サードパーティ製のソフトウェアを使用して、パーティションをリサイズすることもできます。

3. WDクイックフォーマットのツールでHDDを工場出荷時の設定にフォーマットして、再試行します。工場出荷時の設定にHDDをフォーマットするのは、HDDをWindows XPで認識できなく、HDD上のデータが全て無くなることを起こすことを注意します。そのため、HDD上に貴重なデータがあれば、それをバックアップします。

4. それらの手順の後、同じエラーがまだ発生すれば、お使いのHDDは高度なフォーマット(4K)のディスクであるはずです。I/Oデバイスエラーが発生したため、要求を実行できませんでしたという問題を修正するために、Windowsをバックアップし、アップグレードするのに他のHDDに切り替えることを考えているかもしれません。

ここでは、2つの高度なフォーマット(4K)のディスクがあります。一つは512バイトエミュレーション(512E)です。それは512バイトをその論理セクターサイズとして、4KBをその物理セクターサイズとして報告します。もう一つは4KBネイティブです。それは4 KBをその論理と物理セクターサイズとして持っています。

512バイトエミュレーションを使用している高度なフォーマット(4K)のディスクはWindows 8、Windows Server 2012、Windows 7 w/ MS KB 982018、Windows 7 SP1、Windows Server 2008 R2 w/ MS KB、982018、Windows Server 2008 R2 SP1、Windows Vista w/ MS KB 2553708、Windows Server 2008 w/ MS KB 2553708にサポートされることができます。

高度なフォーマット4KネイティブのディスクはWindows 8、Windows Server 2012にサポートされることができます。

物理と論理セクターサイズを取得するために、管理者権限のコマンドプロンプトに「fsutil fsinfo ntfsinfo 」コマンドを実行できます。それは「セクターあたりのバイト数:512」と「物理セクターあたりのバイト数:4096」を表する場合、これは512バイトエミュレーションを使用している高度なフォーマット(4K)のディスクです。それは2つのラインは4096を表する場合、これは4KBネイティブのディスクです。それは「セクターあたりのバイト:Not Supported」を表する場合、HDDはIOCTL_STORAGE_QUERY_PROPERTYをサポートしません。

エミュレーション