“ls -l”显示一些异常文件,并带有“?”

“ls -l”显示一些异常文件,并带有“?”

最近我在访问FTP服务器时遇到了一个问题。服务器系统日志显示/etc/wu-ftpd/ftpaccess文件丢失,如下:

wu-ftpd[15695]: 无法打开访问文件 /etc/wu-ftpd/ftpaccess: 没有这样的文件或目录

列出了内容后/etc/,发现serverl文件异常,输出中有几个"?",而根本没有/etc/wu-ftpd/

?--------- ? ? ? ? ? inputrc

?--------- ? ? ? ? ? nsswitch.conf.nis

?--------- ? ? ? ? ? pam.conf

?--------- ? ? ? ? ? syslog/ng

?--------- ? ? ? ? ? wu/ftpd

是否有任何可能的原因导致诸如磁盘问题、文件系统崩溃或人为操作不慎等异常情况?

答案1

我有另一个答案 - 文件系统没有损坏,目录的执行权限未设置。

试试这个:(任何 Linux,但在 CentOS 7.3 上测试过)

cdir=MasterTest/config
mkdir -p $cdir/flue
touch $cdir/flue/goo
chmod 440 $cdir/*
chmod 440 $cdir/$DESC_FILE
ls -alstr $cdir

ls: cannot access MasterTest/config/flue: Permission denied
ls: cannot access MasterTest/config/..: Permission denied
ls: cannot access MasterTest/config/.: Permission denied
total 0
? d????????? ? ? ? ?            ? flue
? d????????? ? ? ? ?            ? ..
? d????????? ? ? ? ?            ? .

恢复:

chmod +x $cdir/
ls -alstr $cdir
total 12
4 drwxr-xr-x 3 me me 4096 May 19 14:25 ..
4 dr-xr-x--x 3 me me 4096 May 19 14:25 .
4 dr--r----- 2 me me 4096 May 19 14:25 flue

答案2

这是文件系统损坏的结果。该目录(也只是一个文件)列出了不指向有效 inode 的条目。您应该运行fsck任何文件系统。一般来说,检查时一定不能挂载文件系统。

相关内容