У меня есть файл с именем .viminfo
в домашнем каталоге. Я вижу, что файл есть ls -lh
:
$ ls lh
...
drwxr-xr-x. 2 mt1022 1091 4.0K Oct 12 2016 .vim
-?????????? ? ? ? ? ? .viminfo
-rw-r--r--. 1 mt1022 1091 305 Nov 9 2013 .vimrc
...
Однако я не могу удалить этот файл:
$ rm .viminfo
rm: cannot remove '.viminfo': No such file or directory
Где-то видел, что такие файлы повреждены, их можно удалить по номеру inode. Однако когда я бегу ls -i
Я получил следующий вывод для файла:
145563901919042729 .cpan 144115239380596661 .vim
145563901918974272 .cpanm ? .viminfo
145564136279985406 .dask 144115238810163333 .vimrc
Я тоже пробовал sudo chmod g+x .viminfo
(ответ на очень похожий пост на этом сайте). У меня все еще есть no such file or directory
ошибка.
У меня вопрос: как удалить такой поврежденный файл?
дополнительная информация, которая может быть полезна:
fsck
.Знак вопроса в выводе ls означает, что он не может stat()
запись в каталоге.
Вы также можете увидеть их, если попытаетесь указать каталог, для которого у вас есть разрешение r (ead), но не x (поиск). Однако в этом случае он не будет сообщать об ошибке ввода-вывода.
В вашем случае мне кажется, что есть какое-то повреждение диска или файловой системы.
Попробуйте проверить dmesg
или /var/log/messages
Чтобы получить больше информации.