Windowsで外付けハードドライブのI/Oデバイスエラーを解決する方法
外付けハードドライブにアクセスしたり初期化しようとした時に、「I/Oデバイスエラーのため、要求を実行できませんでした」という恐ろしいメッセージが表示されるのは本当にイライラします。通常、これはドライバの不具合や転送モードの設定に起因していますが、時にはドライブ自体が故障していることを示すだけの場合もあります。ドライブが他のPCで表示されなかったり、別のPCで動作したりする場合は、物理的に故障している可能性があります。その場合は、データ復旧か交換が最善策かもしれません。しかし、それらに飛びつく前に、ドライブを再び動作させるのに役立つ、実証済みの解決策をいくつかご紹介します。
Windowsはハードウェアの調整に対してかなり厳しいため、まずケーブルを交換したり、別のポートを試したりするなど、初期チェックを行うことをお勧めします。通常、このエラーは接続またはドライバの問題が原因で発生しており、特にドライブが1台のマシンでは動作していないように見えるのに、他のマシンでは正常に動作している場合は、特に注意が必要です。このガイドでは、転送モードの調整から破損したセクターの修復まで、一般的な解決策を紹介していますので、これらの解決策のいずれかが、ドライブを正常な状態に戻すのに役立つことを願っています。
外付けハードドライブのI/Oデバイスエラーを修正する方法
方法1: 転送モードを確認してリセットする
これは既知の原因です。一部のドライブやコントローラーはデフォルトでUltra DMAモードに設定されていますが、システムがこのモードをサポートしていない場合や設定が間違っている場合はエラーが発生する可能性があり、その際にエラーが表示されます。転送モードを調整することで通信の問題を解決できる場合があります。
- を押してWin + Rと入力し
devmgmt.msc、Enter キーを押してデバイス マネージャーを開きます。 - IDE ATA/ATAPI コントローラーへ移動します。これが表示されない場合は、ストレージコントローラーの下にグループ化されている可能性があります。
- 外付けドライブが接続されているチャネルを見つけます。おそらく、プライマリ IDE チャネルまたはセカンダリ IDE チャネルというラベルが付いています。
- それを右クリックして、[プロパティ]を選択します。
- 「詳細設定」タブに移動します。ここで「転送モード」が表示されます。
- システムがサポートするモードを選択してください。不明な場合やドライブが非常に古い場合は、PIOのみに設定すると改善される可能性があります。それ以外の場合は、システムがサポートする最高のUDMAモードを選択してください。ドライバーの仕様により、Windowsが自動的にモードを切り替えない場合があります。
この修正は、転送モードの不一致がI/Oエラーの原因となっている場合に役立ちます。少し奇妙ですが、一部の設定では、この不一致がドライブの動作を停止させるのに十分な場合があります。ある設定では、この設定を切り替えるだけで、再起動後にドライブが再び認識されました。
方法2:CHKDSKを実行してドライブエラーを修正する
ドライブにディスクエラーや不良セクタがある場合、エラーの原因となる可能性があります。CHKDSKを実行するとエラーがチェックされ、修復が試みられます。破損が原因の場合は、ドライブが復旧する可能性があります。
- Runダイアログ(Win + R)を開き、 と入力して
cmdを押し、Ctrl + Shift + Enterコマンドプロンプトを管理者として起動します。許可を求められた場合は、承認してください。 - 次のコマンドを入力します
chkdsk /r /x E:(E:を実際のドライブ文字に置き換えてください)。これにより、不良セクタがスキャンされ、論理エラーが修正され、必要に応じて強制的にマウント解除されます。 - Enter キーを押して実行します。破損が広範囲にわたる場合は、しばらく時間がかかることがあります。
なぜ機能するのかは分かりませんが、一部のドライブでは、このプロセスによってエラーが十分に解消され、再び応答するようになります。ただし、不良セクタのハニカム構造が巨大な場合は、奇跡的な効果は期待できません。
方法3: ドライバーを更新または再インストールする
ドライブの問題は、多くの場合、ドライバが古くなったり破損したりしていることが原因です。特にWindowsが正常に通信できない場合は、ドライバを更新すると問題が解決する可能性があります。
- デバイス マネージャー ( devmgmt.msc ) を再度起動します。
- 「ディスク ドライブ」を展開します。外付けドライブを右クリックし、「ドライバーの更新」を選択します。
- 「ドライバーを自動的に検索する」を選択します。Windowsが更新プログラムを検索するまで待ちます。新しい更新プログラムが見つかった場合はインストールし、再起動してください。
- 次に、ユニバーサル シリアル バス コントローラーを展開し、すべての USB デバイスを更新します。USB ドライバーの不具合によって I/O の問題も発生する可能性があるため、この手順を省略しないでください。
- それでも問題が解決しない場合は、デバイスのアンインストールもお試しください。「ディスクドライブ」の下にあるドライブを右クリックし、「デバイスのアンインストール」を選択して再起動してください。Windowsが自動的にドライバーを再インストールするため、頑固なバグが解消されることがあります。
ドライバーの再インストールで複数のドライブが救われた事例は過去に複数あります。新しいドライバーをインストールすると全てがリセットされてしまうというのは、少し不思議なことです。ただし、Windowsによっては、完全に最適化されていない汎用ドライバーがインストールされる場合があることにご注意ください。その場合は、メーカーのウェブサイトで最新のドライバーを入手するのが良いかもしれません。
方法4:イベントビューアーで手がかりを確認する
通常の修正で問題が解決しない場合は、Windows のログから何が問題なのかのヒントが得られるかもしれません。イベント ビューアーでは、ディスクやドライバーのエラーに関する詳細なエラー ログを確認できるため、より具体的な問題を特定できる可能性があります。
- を開きRun、
eventvwrと入力して Enter キーを押します。 - Windows ログ>システムに移動します。
- 右側の「現在のログをフィルター」をクリックし、イベント レベルを「重大」に設定します。
- エラーが発生した関連する期間を選択し、[OK] をクリックします。
- リストをスクロールして、その時間帯に何がポップアップ表示されるかを確認してください。ストレージ、ディスク、またはUSBコントローラーに関連するエラーは、良い手がかりになります。
- エラーをダブルクリックすると詳細が表示されます。サポートチームと共有したり、さらに詳しく調査したりする場合は、保存することもできます。
これは必ず解決するわけではありませんが、問題がハードウェア、ドライバー、あるいはファイルシステムの不具合などの他の何かにあるかどうかが明らかになる可能性があります。
方法5: コマンドラインでドライブをフォーマットする
他の方法がすべて失敗し、ドライブが物理的に壊れていないことがほぼ確実な場合は、コマンド ラインからフォーマットすると、頑固なエラーを消去できます。ただし、すべてが消去されることに注意してください。
- を開きRun、
diskpartと入力して Enter キーを押します。 - 以下のシーケンスを入力し、各行の後に Enter キーを押します。
list disk— ディスクが表示されます。サイズでディスクを識別します。select disk X— X は外付けドライブの番号です。clean— パーティションテーブルを消去します。convert gpt— ドライブが 2.5 TB 以上の場合 (または最新の状態に保つため) はこれを使用します。ドライブが 2.5 TB より小さい場合や NTFS のみが必要な場合はスキップします。create partition primary— フォーマットされていないパーティションを作成します。format fs=exfat quick— exFAT へのクイック フォーマット。クロスプラットフォームに適しています。Windowsntfsを使い続ける場合は に変更します。assign— ドライブに文字を割り当てます。exit— diskpart を終了します。
警告:これは完全な消去なので、バックアップが問題にならない場合にのみ実行してください。ドライブのファイルシステムまたはパーティションがDIY修復不可能なほど破損している場合、この方法でアクセスが回復することがあります。
正直なところ、これらの手順を複数組み合わせるだけで済む場合もあれば、ドライブ自体が完全に壊れている場合もあります。とはいえ、これらの修正方法を試してみることで、いくらかのデータが救われるかもしれませんし、少なくともエラーがブラックホール化してしまうのを防げるかもしれません。うまく対処できるといいですね。この方法が、誰かのスクリュードライバー回避の助けになれば幸いです!