Вопросительные знаки отображаются в лс каталога. Ошибки ввода-вывода тоже

44

Кто-нибудь видел это раньше? У меня на сервере установлен raid 5 и по какой-то причине он начал показывать это:

jason @ box2: / mnt / raid1 / cra $ ls -alh
ls: невозможно получить доступ к e6eacc985fea729b2d5bc74078632738: ошибка ввода / вывода
ls: невозможно получить доступ 257ad35ee0b12a714530c30dccf9210f: ошибка ввода / вывода
всего 0
drwxr-xr-x 5 root root 123 2009-19-19 16:33.
drwxr-xr-x 3 root root 16 2009-08-14 17:15 ..
?????????? ? ? ? ? ? 257ad35ee0b12a714530c30dccf9210f
drwxr-xr-x 3 root root 57 2009-08-19 16:58 9c89a78e93ae6738e01136db9153361b
?????????? ? ? ? ? ? e6eacc985fea729b2d5bc74078632738

Строки md5 являются фактическими именами каталогов и не являются частью ошибки. Знаки вопроса нечетные, и любой каталог со знаком вопроса выдает ошибку io, когда вы пытаетесь использовать / удалить / etc.

Я не смог размонтировать диск из-за «занят». Перезагрузка сервера «исправила» его, но он вызывал некоторые ошибки рейда при завершении работы. Я настроил два массива raid 5, и оба начали делать это на случайных файлах. Оба используют следующую конфигурацию:

mkfs.xfs -l размер = 128 м -d agcount = 32
mount -t xfs -o noatime, logbufs = 8

Ничего особенного, но часть оптимизированного конфига для этой коробки. Мы не разделяем диски, и это было предложено в качестве возможной проблемы. Может ли это быть виновником?


источник
Я видел эти знаки вопроса, когда у autofs были проблемы с монтированием каталога. Завершение работы autofs позволило мне удалить каталог и попробовать подключить его вручную, что указывало на ошибку разрешений на удаленном сервере.
Пейс

Ответы:

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, но не тот х, который необходим для перечисления, поиска и доступа. Doing sudo chmod -R g+x mailрешил эту проблему.

user65174
источник
4
'sudo chmod -R g + x mail', а затем chmod +x mailрешил мою проблему, спасибо!
Глебм
6
что если вы lsвернетесь no such file or directoryс кучей ?????в области привилегий / прав?
Кевин Мередит
11

Знаки вопроса в lsвыводе просто указывают на то, что в нем не может быть stat()записи каталога. Вы также можете увидеть их, если у вас lsесть каталог, для которого у вас есть разрешение r (ead), но нет разрешения x (поиск). Однако в этом случае он не будет сообщать об ошибке ввода / вывода .

В вашем случае это выглядит как ошибка диска или, возможно, повреждение файловой системы. /var/log/messagesили dmesgможет раскрыть более подробную информацию.

mark4o
источник
10

Ответы с упоминанием прочитанного, но не выполненного или stat () являются правильными. Но есть общая причина этого (кроме коррупции), которая укусила меня несколько раз и хорошо бы соответствовала вашему вопросу с ошибками ввода-вывода. Если вы неправильно смонтировали файловую систему, точка монтирования этой файловой системы может отображаться с вопросительными знаками. Если вы видите их там, где вы только что пытались смонтировать новую файловую систему, попробуйте следующее, прежде чем беспокоиться о повреждении и fsck.

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

Вы должны увидеть папку 257ad35ee0b12a714530c30dccf9210f с разрешениями и атрибутами, а не с вопросительными знаками. Если это так, найдите другие параметры для вашей команды монтирования или файла / etc / fstab. Если нет, возможно, пришло время прочитать другие ответы, сделать резервную копию того, что вы можете, и запустить fsck.

mightypile
источник
это была моя проблема
эндолит
5

Сделайте резервную копию как можно скорее, хотя бы для того, чтобы, если вы еще больше испортили ее, пытаясь восстановить любой потенциальный ущерб, вы могли бы вернуться к первоначальному менее разрушенному состоянию. После создания резервной копии вы можете запустить fsck, чтобы увидеть, нет ли проблем.

Стивен Шланскер
источник
в моем случае это уже резервное копирование.
Паоло
1

У нас был сервер с поврежденной файловой системой (reiserfs), и он генерировал записи каталога с вопросительными знаками для всех атрибутов, кроме имени файла. В нашем случае имена файлов остались без изменений.

Кроме того, о свободном пространстве сообщалось неправильно. При использовании du -sh /*мы могли составлять только около 30 ГБ, но было заявлено, что накопитель используется более 200 ГБ.

Перезагрузка сервера с 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

Он генерирует временные файлы, которые создаются и удаляются быстро, что приведет к ошибкам, если вы попытаетесь вызвать другие простые команды управления файлами, такие как rm , mv и т. Д.

Мартон Татаи
источник
0

Просто чтобы дать другую точку зрения - у меня было это, когда я программно генерировал каталоги из списка каталогов в файле (в ruby).

Конечно, строка из файла проходила в виде строки с \ n в конце - которая выглядела хорошо и, казалось, работала. Тем не менее, когда я начал создавать каталоги, а не шлепать их, в итоге я создал по два из каждого каталога: /whatiwantedи /whatiwanted?.

Люк Пирс
источник
0

Иногда я вижу это как временную ошибку, когда сервер NFS сильно перегружен.

ОП спрашивал о RAID, но в нескольких ответах упоминается NFS, и именно этот поиск и привел меня сюда.

агр
источник