How can I remove a corrupted file in Linux?
Solution 1
Did you try fsck on that unit?
Solution 2
Run fsck first to ensure the data is consistent. You may have to use sudo to gain the require privileges to repair.
Then you can use rm -i
to remove the file. You may want to use less or more to read the file first to see if you want to keep it first.
There are a number of tools which allow you to browse and delete files. I use mc and emacs from the command line. If you use a graphical interface, the file browser will also handle the cleanup.
Related videos on Youtube
Comments
-
Jasongiss over 1 year
The power went out at home and my Linux server (Plugbox Linux) went down. After it came back up, one of the files on the USB drive that was connected is corrupt. "ls -il" gives this:
? -????????? ? ? ? ? ? server.prefs
How can I remove this file? I googled a bit and found out how to delete a file by inode number, but I can't even get the inode number of this file.
Any ideas?
-
James Sneeringer over 13 years
fsck
by itself should take care of it. You'll typically see that kind of output fromls
when a file listed in a directory isn't actually present on the volume. It prints question marks because it can't stat() the file to get the permissions, size, etc.fsck
will see and should be able to correct this inconsistency. The downside is that theserver.prefs
file is almost certainly gone, so hopefully Nate has a backup if he needs it. -
Jasongiss over 13 yearsfsck did the trick