So löschen Sie ein beschädigtes Verzeichnis unter Linux

So löschen Sie ein beschädigtes Verzeichnis unter Linux

Ich habe eine Maschine mit einem scheinbar beschädigten Verzeichnis. Die Ausgabe ls -lahlautet etwa:

???????????  ? ?        ?           ?            ? dir_name

Dies war früher ein gültiges Verzeichnis in einer CentOS 7-VM auf SSD. Ich weiß nicht, was passiert ist, aber jetzt möchte ich es einfach löschen, aber das scheint nicht möglich:

$sudo rm -rf dir_name 
rm: cannot remove ‘dir_name’: Is a directory

Und statkann es auch nicht lesen:

stat dir_name
stat: cannot stat ‘dir_name’: No such device

Was ist der einfachste Weg, dieses Verzeichnis sicher zu löschen?

Antwort1

Sie können beschädigte Verzeichnisse nicht löschen.

Sie müssen umountdas Dateisystem und führen Sie einefsck

gemäß man 8 fsck

fsck - ein Linux-Dateisystem prüfen und reparieren

Antwort2

Obwohl die allgemeine Antwort gegeben wurde, möchte ich nur darauf hinweisen, dass in meinem speziellen Fall dieses Verzeichnis auch als SMB-Einhängepunkt (CIFS) verwendet wurde, was ich mit dem mountBefehl sehen konnte. Die Lösung bestand also darin, einfach Folgendes zu tun:

sudo umount /home/user/dir_name

Und dann sah das Verzeichnis wieder normal aus und ich konnte es wie gewohnt löschen.

verwandte Informationen