Linuxシステムで破損したファイルを削除する

Linuxシステムで破損したファイルを削除する

破損したファイルを削除する方法は?

Linux(Fedoraベース)で次のように入力すると、ls -l次の結果が表示されます。

drwxr-xr-x.  2 dmiller3 dmiller3     4096 Jul 26 13:57 SomeFile
??????????   ? ? ?                   4096 Jul 26 13:57 CorruptedFile  

この破損したファイルでは何もできません。削除やその他の操作には使用できません。これはシステム全体で唯一のファイルです。原因は何ですか?それを削除する方法?

ファイルシステムはext2です。

答え1

ハードリセット中にファイルを書き込んでいるか、ハードドライブに問題がある可能性があります。 aはfsckこれを修正する必要があります(fsにそれを実行させる必要がありますumount)。ハードドライブでエラーが報告されていることを確認しますdmesgsmartctl -a /dev/hdx後者はsmartmontoolsの一部です)。また、badblocksパーティションに対して非破壊操作を実行します。

また、ログがこのような問題を解決するのに役立ちますので、ext2を実行する理由を自分に尋ねる必要があります。

答え2

ファイルシステムで見たいくつかの興味深い問題は次のとおりです。

  • 「ls file」を明示的に要求した場合にのみ表示されるファイルは表示されますが、一般的な「ls」は表示されません。次のファイル名には、「Go up a line」というエスケープシーケンスがあります。
  • 不可能な権限/タイプを持つファイル:fsck(8)を介して変更するか、rm(1)を使用してファイルを吹き飛ばします。
  • ディレクトリを作成し、ここにループを置く犯罪者によって作成された非常に深いディレクトリツリー:ディレクトリを最後まで削除し、ループをバックアップするようにプログラムを作成する必要があります。

関連情報