因此,我在目录上运行了一个命令/var/www/html
,似乎所有内容都以某种方式更改为文件。我不确定出了什么问题,但是有什么方法可以恢复所有内容吗?似乎所有目录都显示为具有相同名称的文件等。我记得freedups
在目录中使用了一个名为的程序,它将重复的文件硬链接在一起,但我不确定这是否是导致此错误发生的原因。
输出ls -al
total 0
d????????? ? ? ? ? ? .
d????????? ? ? ? ? ? ..
d????????? ? ? ? ? ? ascii
d????????? ? ? ? ? ? corgi
-????????? ? ? ? ? ? default.html
d????????? ? ? ? ? ? dnld
d????????? ? ? ? ? ? downloads
d????????? ? ? ? ? ? games
d????????? ? ? ? ? ? games_beta
-????????? ? ? ? ? ? .htaccess
-????????? ? ? ? ? ? index.html
答案1
看起来您失去了/var/www/html
目录的执行权限,至少对于当前用户来说是这样。
在目录中,执行权限位决定您是否有权访问stat
其内容,即检索有关其中的文件和子目录的信息。
只需为该目录下的每个人添加执行位,一切就都好了:
sudo chmod +x /var/www/html
答案2
尝试做ls -al
一个"file"
如果有效,那么你就有康复的机会
下次尝试:chmod 700 "file"
此时你可能需要退出会话(注销)并重新进入新会话
...请记住,Unix 中的一切基本上都是“文件”,而您的目录更是如此。