普段から使っているUSBストレージの、あるフォルダをPCで開こうとしたら、「ファイルまたはディレクトリが壊れているため、読み取ることができません。」というエラーになった。うわあああ、結構重要なファイルが入っているのに、ファイルが取り出せなかったらヤバい。。chkdskコマンドを使えば修復ができるかもしれない。。。ということで、早速ためしてみました。
どういうエラーか..
USBストレージは、2TBのM.2のSSDをSSDの外付けケースに格納して組み立てたものです。
(関連記事はコチラ)
USBストレージは、USB切り替え器に接続していて、2台のPCから切り替えてアクセスできるようにしていました。切り替え器は、ボタンひとつでPC1とPC2への接続を切り換えられる訳ですが、USBストレージからすれば、一方のPCから外されてもう一方のPCに接続されるという行為をされているのに等しいと思うので、安全な取り外し方ではないのでしょうね。
今まで、1年以上もこの使い方で問題はありませんでした。でも、今日、USBストレージの中にある、あるフォルダが開けなくなりました。
エラーダイアログは、こんなふうに表示されます(フォルダ名はxxxに書き替えています)。

F:\share\xxx というフォルダだけ開けなくて、その他のフォルダは開けるし、ファイルにもアクセスできます。でも、F:\share\xxx の下に大事なファイルを格納しているのだよおおお。
バックアップサボってたし、USBストレージを乱暴に扱っていたら自業自得なんだけど。。。
神様ごめんなさい、これからちゃんとバックアップを取得することになるので、今回は復旧して下さい。。。
chkdskコマンドで修復を試みる..
今回のように「ファイルまたはディレクトリが壊れているため、読み取ることができません」となった場合は、Windowsが標準で有しているchkdskコマンドを使用してディスクエラーをチェックし、破損したファイルシステムを修復することを試みましょう。
修復ができれば、読み取りでエラーになっていたファイルやディレクトリ(フォルダ)にもアクセスできるようになる可能性があります。
ターミナルを管理者として実行
chkdskコマンドは、ターミナル(コマンドプロンプト)から実行するので、Windowsのスタートメニューから「ターミナル」を選択し、「詳細」の中の「管理者として実行」を選択して下さい。
以下はWindows11のスタートメニューから呼び出している例です。

chkdskコマンドによるディスクの修復
chkdskコマンドにはいろいろなオプションがありますが、今回の目的は「ファイルまたはディレクトリが壊れているため、読み取ることができません」のエラーを解決することなので、その方法を書きます。
今回は、前述のエラーメッセージの通り、F:\share\xxx にアクセスできない、という問題なので、Fドライブに対して修復をかけることになります。chkdskコマンドは以下のように実行します。
chkdsk f: /F
「f:」はFドライブを指定しています。「/F」はディスクのエラーを修復するオプションです。
実行後の経過とメッセージは以下の通りです。

USBストレージは2TBですが、chkdskコマンドはあっという間に終了しました。
13個のインデックスのないファイルがスキャンされて、13個のファイルが回復されています。
このメッセージを見る限り、回復は成功ってことなのでしょうね。
chkdskのオプション
「/?」オプションを指定すると、使い方とオプションの一覧を表示してくれます。
chkdsk /?




コメント