Хорошо, это новый. Я видел подобные случаи с неисправными устройствами хранения, с ошибками в удаленном хранилище (SAN, NAS), я думаю, что я даже видел нечто подобное, вызванное разрешениями на монтирование. Но я впервые вижу, что это происходит в той же файловой системе, что и мой homedir ....
Мне очень любопытно по этому поводу ... Какие ограничения здесь? Определенно не монтирует (я нахожусь на той же файловой системе ext4), не SELinux, не ACL. Тогда что???
Я не помню, как этот каталог был создан. Вероятно, это было создано каким-то программным обеспечением.
Для меня самая странная часть в том, что каталогу даже не разрешено видеть информацию о его или его родителе (последняя команда) ...
Линукс Минт Сара
user01@MyPC ~/somedirectory $ ls -l ./deploy_dir/liferay-portal-6.1.1-ce-ga2/tomcat-7.0.27/bin/D\:
ls: negaliu pasiekti './deploy_dir/liferay-portal-6.1.1-ce-ga2/tomcat-7.0.27/bin/D:/workspace': Permission denied
viso 0
d????????? ? ? ? ? ? workspace
user01@MyPC ~/somedirectory $ ls -ld ./deploy_dir/liferay-portal-6.1.1-ce-ga2/tomcat-7.0.27/bin/D\:
drw-r--r-- 3 user01 user01 4096 Rgs 27 2016 ./deploy_dir/liferay-portal-6.1.1-ce-ga2/tomcat-7.0.27/bin/D:
user01@MyPC ~/somedirectory $
user01@MyPC ~/somedirectory $
user01@MyPC ~/somedirectory $ ls -l ./deploy_dir/liferay-portal-6.1.1-ce-ga2/tomcat-7.0.27/bin/D\:
ls: negaliu pasiekti './deploy_dir/liferay-portal-6.1.1-ce-ga2/tomcat-7.0.27/bin/D:/workspace': Permission denied
viso 0
d????????? ? ? ? ? ? workspace
user01@MyPC ~/somedirectory $
user01@MyPC ~/somedirectory $
user01@MyPC ~/somedirectory $ sudo file ./deploy_dir/liferay-portal-6.1.1-ce-ga2/tomcat-7.0.27/bin/D\:
./deploy_dir/liferay-portal-6.1.1-ce-ga2/tomcat-7.0.27/bin/D:: directory
user01@MyPC ~/somedirectory $ sudo ls -l ./deploy_dir/liferay-portal-6.1.1-ce-ga2/tomcat-7.0.27/bin/D\:
viso 4
drwxr-xr-x 3 user01 user01 4096 Rgs 27 2016 workspace
user01@MyPC ~/somedirectory $ sudo stat ./deploy_dir/liferay-portal-6.1.1-ce-ga2/tomcat-7.0.27/bin/D\:
File: './deploy_dir/liferay-portal-6.1.1-ce-ga2/tomcat-7.0.27/bin/D:'
Size: 4096 Blocks: 8 IO Block: 4096 aplankas
Device: 807h/2055d Inode: 3937216 Links: 3
Access: (0644/drw-r--r--) Uid: ( 1000/ user01) Gid: ( 1000/ user01)
Access: 2017-09-21 12:57:33.990819052 +0300
Modify: 2016-09-27 11:18:38.309775066 +0300
Change: 2017-03-13 14:56:40.960468954 +0200
Birth: -
user01@MyPC ~/somedirectory $ sudo getfacl ./deploy_dir/liferay-portal-6.1.1-ce-ga2/tomcat-7.0.27/bin/D\:
# file: deploy_dir/liferay-portal-6.1.1-ce-ga2/tomcat-7.0.27/bin/D:
# owner: user01
# group: user01
user::rw-
group::r--
other::r--
user01@MyPC ~/somedirectory $ stat ./deploy_dir/liferay-portal-6.1.1-ce-ga2/tomcat-7.0.27/bin/D\:
File: './deploy_dir/liferay-portal-6.1.1-ce-ga2/tomcat-7.0.27/bin/D:'
Size: 4096 Blocks: 8 IO Block: 4096 aplankas
Device: 807h/2055d Inode: 3937216 Links: 3
Access: (0644/drw-r--r--) Uid: ( 1000/ user01) Gid: ( 1000/ user01)
Access: 2017-09-21 12:57:33.990819052 +0300
Modify: 2016-09-27 11:18:38.309775066 +0300
Change: 2017-03-13 14:56:40.960468954 +0200
Birth: -
user01@MyPC ~/somedirectory $ stat ./deploy_dir/liferay-portal-6.1.1-ce-ga2/tomcat-7.0.27/bin/D\:/workspace
stat: nepavyksta patikrinti './deploy_dir/liferay-portal-6.1.1-ce-ga2/tomcat-7.0.27/bin/D:/workspace': Permission denied
user01@MyPC ~/somedirectory $ sudo stat ./deploy_dir/liferay-portal-6.1.1-ce-ga2/tomcat-7.0.27/bin/D\:/workspace
File: './deploy_dir/liferay-portal-6.1.1-ce-ga2/tomcat-7.0.27/bin/D:/workspace'
Size: 4096 Blocks: 8 IO Block: 4096 aplankas
Device: 807h/2055d Inode: 3937217 Links: 3
Access: (0755/drwxr-xr-x) Uid: ( 1000/ user01) Gid: ( 1000/ user01)
Access: 2017-09-21 12:58:46.845727190 +0300
Modify: 2016-09-27 11:18:38.309775066 +0300
Change: 2016-12-02 13:56:08.298109826 +0200
Birth: -
user01@MyPC ~/somedirectory $ stat .
File: '.'
Size: 4096 Blocks: 8 IO Block: 4096 aplankas
Device: 807h/2055d Inode: 3278479 Links: 23
Access: (0755/drwxr-xr-x) Uid: ( 1000/ user01) Gid: ( 1000/ user01)
Access: 2017-09-21 09:46:22.102269130 +0300
Modify: 2017-09-20 17:33:04.564009275 +0300
Change: 2017-09-20 17:33:04.564009275 +0300
Birth: -
user01@MyPC ~/somedirectory $ ll ./deploy_dir/liferay-portal-6.1.1-ce-ga2/tomcat-7.0.27/bin/D\:/
ls: negaliu pasiekti './deploy_dir/liferay-portal-6.1.1-ce-ga2/tomcat-7.0.27/bin/D:/workspace': Permission denied
ls: negaliu pasiekti './deploy_dir/liferay-portal-6.1.1-ce-ga2/tomcat-7.0.27/bin/D:/.': Permission denied
ls: negaliu pasiekti './deploy_dir/liferay-portal-6.1.1-ce-ga2/tomcat-7.0.27/bin/D:/..': Permission denied
viso 0
d????????? ? ? ? ? ? ./
d????????? ? ? ? ? ? ../
d????????? ? ? ? ? ? workspace/
user01@MyPC ~/somedirectory $
Атрибуты:
user01@MyPC ~/somedirectory $ sudo lsattr ./deploy_dir/liferay-portal-6.1.1-ce-ga2/tomcat-7.0.27/bin/D\:/
-------------e-- ./deploy_dir/liferay-portal-6.1.1-ce-ga2/tomcat-7.0.27/bin/D:/workspace
user01@MyPC ~/somedirectory $ sudo lsattr ./deploy_dir/liferay-portal-6.1.1-ce-ga2/tomcat-7.0.27/bin/D\:/workspace
-------------e-- ./deploy_dir/liferay-portal-6.1.1-ce-ga2/tomcat-7.0.27/bin/D:/workspace/directory2
user01@MyPC ~/somedirectory $
permissions
filesystems
directory
netikras
источник
источник
Ответы:
Для чтения файлов достаточно проверить права доступа. Вам нужно прочитать И выполнить на папки, чтобы ls их.
Заглавная буква X для установки выполнения только для папок (и файлов, в которых уже установлен бит выполнения).
источник
Чтение разрешений файла требует обращения
stat(2)
к нему, а для этого требуется разрешение на выполнение / доступ для содержащегося каталога (все каталоги в пути). Это фактически то же самое с любым другим системным вызовом, который принимает имя файла. Однако для чтения содержимого каталога (списка имен файлов) требуется только чтение из каталога.В вашем примере фрагмента:
ls
попытался позвонитьstat(".../bin/D:/workspace")
, получил ошибку и пожаловался. В некоторых системах вы можете получить частичную информацию изreaddir
/getdents
звонков вместе с именами файлов, без необходимости использованияstat
. Как здесь,workspace
показано, что каталог.И здесь мы видим, что для любого пользователя нет битов x:
От имени пользователя root вы получите полный список, поскольку будучи пользователем root, биты прав доступа полностью игнорируются.
источник
LC_ALL=C
вместо этого экспортировать в вашу среду?Чтобы просмотреть атрибуты файла, нужно иметь право читать каталог. Если это невозможно, будут показаны вопросительные знаки.
По той причине, что этот пользователь не может прочитать информацию, посмотрите на атрибуты каталога (
.../D:/.
выше). Другая возможная причина может быть, если каталог был удален или недоступен (например, сетевая файловая система, устаревший дескриптор) по причине, отличной от режимов доступа.источник
ll
не происходит ли сбой, какuser01
на любом из родителей вплоть до root). Не нужно публиковать результаты, просто сообщите нам результат, пожалуйста.ls
тест. Результат идентиченx
флага, поэтому HoD прав. Я не видел этого в твоих беспорядочных выходных.strace
сказал бы тебе это. тоже.Сегодня у меня была очень похожая проблема с похожими симптомами: вопросительные знаки в полях прав доступа и владения, и даже с root / sudo я не смог ничего изменить. Затем я наконец вспомнил, что этот конкретный каталог фактически являлся точкой подключения к каталогу на общем файловом ресурсе Windows, который я настроил несколько недель назад (в пробном сеансе, чтобы проверить, подходит ли Samba / CIFS для моего проекта) и, по-видимому, тем временем он был размонтирован. После повторного
mount.cifs
ввода команды и ввода моих учетных данных для Windows-части нашей сети команда 'ls' сообщила о нормальных правах доступа и информации о владельце каталога. Поскольку симптомы выглядели точно так же, как у вас, мне интересно, находитесь ли вы в похожей ситуации, в том числе и потому, что «D:» выглядит очень по-Windows.источник
~
). Кроме того, они уже знают, что подобные проблемы могут быть вызваны проблемами с удаленным хранилищем.stat
команда подтверждает это. Сравните этоDevice
поле соstat .
статистикой sudo ./deploy_dir/liferay-portal-6.1.1-ce-ga2/tomcat-7.0.27/bin/D \: файл: './deploy_dir/liferay-portal-6.1.1-ce -ga2 / кот-7.0.27 / бен / D: ''. Это то же самое. Этот вывод является хорошим доказательством того, что они находятся в одной файловой системе.