目录ls中显示的问号。IO错误


44

谁看过这个吗?我的服务器上安装了raid 5,无论出于什么原因,它开始显示以下内容:

jason @ box2:/ mnt / raid1 / cra $ ls -alh
ls:无法访问e6eacc985fea729b2d5bc74078632738:输入/输出错误
ls:无法访问257ad35ee0b12a714530c30dccf9210f:输入/输出错误
总计0
drwxr-xr-x 5根根123 2009-08-19 16:33。
drwxr-xr-x 3 root root 16 2009-08-14 17:15 ..
?????????? ?????257ad35ee0b12a714530c30dccf9210f
drwxr-xr-x 3根根57 2009-08-19 16:58 9c89a78e93ae6738e01136db9153361b
?????????? ?????e6eacc985fea729b2d5bc74078632738

md5字符串是实际目录名称,而不是错误的一部分。问号是奇怪的,当您尝试使用/删除/等任何带有问号的目录时,都会引发io错误。

由于“忙”,我无法卸下驱动器。重新引导服务器“修复”了它,但是在关机时引发了一些RAID错误。我已经配置了两个RAID 5阵列,并且都开始在随机文件上执行此操作。两者都使用以下配置:

mkfs.xfs -l size = 128m -d agcount = 32
挂载-t xfs -o noatime,logbufs = 8

没什么花哨的,只是此盒的优化配置的一部分。我们不对驱动器进行分区,建议将其作为可能的问题。这可能是罪魁祸首吗?


当autofs安装目录出现问题时,我已经看到了这些问号。关闭autofs可以删除目录并尝试手动进行安装,这表明远程服务器上的权限错误。
Pace

Answers:


39

我有一个类似的问题,因为我的目录已读取(r)但没有执行(x)权限。我的目录清单显示:

myname@srv:/home$ ls -l service/mail/
ls: cannot access service/mail/001_SERVICE INBOX: Permission denied
total 0
-????????? ? ? ? ?                ? 001_SERVICE INBOX
d????????? ? ? ? ?                ? 01_CURRENT SERVICE

邮件目录设置了r位,但没有设置列表或搜索和访问所需的x位。这样做sudo chmod -R g+x mail解决了这个问题。


4
'sudo chmod -R g + x mail',然后chmod +x mail解决了我的问题,谢谢!
glebm 2011年

6
如果您在特权/权利区域中ls返回no such file or directory一堆?????怎么办?
凯文·梅雷迪斯

11

ls输出中的问号只是表明它无法stat()输入目录。如果您ls的目录具有r(ead)权限,但没有x(search)权限,则还可以看到这些目录。但是,在那种情况下,它不会报告I / O错误

在您的情况下,看起来好像有磁盘错误或文件系统损坏。 /var/log/messagesdmesg可能会透露更多细节。


10

提到读取但不是execute或stat()的答案是正确的。但是有一个共同的原因(除了损坏)被我咬了好几次,并且可以很好地将您的问题与IO错误匹配。如果您不正确地挂载了文件系统,则该文件系统的挂载点可能会显示带有问号。如果在刚刚尝试挂载新文件系统的地方看到这些内容,请在担心损坏和fsck之前尝试以下操作。

$ sudo umount /mnt/raid1/cra/257ad35ee0b12a714530c30dccf9210f
$ ls -alh /mnt/raid1/cra

您应该看到257ad35ee0b12a714530c30dccf9210f文件夹,其中包含权限和属性,而不是问号。如果是这样,请搜索安装命令或/ etc / fstab文件的其他选项。如果没有,也许是时候阅读其他答案,备份您可以做的事情,然后运行fsck。


这是我的问题
endolith '16

5

如果可能的话,请尽快进行备份,如果在尝试修复任何潜在损坏时将其弄乱了,则可以恢复到原始的状态。备份之后,您可以运行fsck来查看它是否认为存在任何问题。


在我的情况下,这已经是备份。
Paolo 2014年


1

我们有一台服务器的文件系统(reiserfs)损坏,并且它为文件名(文件名除外)的所有属性生成了带有问号的目录条目。在我们的例子中,文件名不受影响。

此外,可用空间被错误地报告。使用du -sh /*该硬盘,我们只能占到30G左右,但据报道该硬盘已超过200G。

重新启动服务器shutdown -rF now以强制执行文件系统检查不起作用。我必须重新引导到单用户模式并运行:

fsck.reiserfs --rebuild-tree /dev/sda3

几乎起作用了。它经过了几遍,然后被锁定。必须重新安装操作系统。

维护您的备份!


1

我在运行autofs时也看到了这一点,但是autofs无法挂载目录。因此,为了弄清楚为什么它无法装入目录,我禁用了autofs并尝试手动装入目录(这也使我可以删除目录)。我尝试手动安装目录,发现权限错误。解决此问题后,目录再次恢复正常。


1

注意服务器上其他正在运行的进程,例如rsync

[root@server upload]# ls -la
ls: cannot access .3bfb3dc5-cb55-435f-8e23-2afcab2c6873_image4993891600240007749.jpg.bV6VTV: No such file or directory
total 194496
drwxr-x--- 2 gx apache    1382 Jan 11 10:36 .
drwxr-x--- 3 gx apache       3 Jan 11 10:29 ..
-rw-r--r-- 1 gx apache   94850 Dec 10  2015 37d355b9-210d-45df-8061-968ea5cb9f31_mob.jpg
...
-rw-r--r-- 1 gx apache   10864 Jul 24  2015 3bfb23bf-8ff5-4603-aa57-9b23ca498e2c_internet.png
-rw-r--r-- 1 gx apache   10864 Jul 24  2015 .3bfb23bf-8ff5-4603-aa57-9b23ca498e2c_internet.png.nHmIPk
-????????? ? ?  ?            ?            ? .3bfb3dc5-cb65-435f-8e23-2agcab2c6873_image4993891600240007749.jpg.bV6VTV

它会生成快速创建和删除的临时文件,如果您尝试调用其他简单的文件管理命令(如rmmv等),则会导致错误。


0

只是换一种说法-当我从文件中的列表目录(以ruby格式)以编程方式生成目录时,我遇到了这个问题。

当然,文件中的行以结尾带有\ n的字符串形式出现-看起来不错,而且似乎可以正常工作。但是,当我开始创建目录而不是被限制时,最终创建了每个目录中的两个:/whatiwanted/whatiwanted?


0

当NFS服务器严重超载时,有时会将此视为暂时性错误。

OP询问了有关RAID的问题,但有几个答案提到了NFS,实际上,这是将我带到这里的搜索。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.