Мы используем хостинг-сервер FreeBSD 10.3, где у нас нет полномочий быть суперпользователем. Мы используем сервер для запуска apache2 для веб-страниц нашей компании. Предыдущий администратор наших веб-страниц, казалось, установил разрешение ACL для каталога, но мы хотим удалить его. Допустим, каталог называется foobar
.
Теперь результат ls -al foobar
выглядит следующим образом:
drwxrwxr-x+ 2 myuser another_user 512 Nov 20 2013 foobar
И разрешение выглядит следующим образом:
[myuser@hosting_server]$ getfacl foobar
# file: foobar/
# owner: myuser
# group: another_user
user::rwx
group::rwx
mask::rwx
other::r-x
Здесь мы хотим удалить разрешение ACL и знак плюс в конце списка разрешений. Поэтому мы сделали
setfacl -b foobar
Это исключило специальное разрешение, регулируемое ACL, но не удалило знак плюс +
.
Наш вопрос заключается в том, как мы можем стереть знак плюс +
в списке разрешений, который отображается как «ls -al foobar»?
permissions
acl
Тайки Бесшо
источник
источник
getfacl
указывает не ACL. Однакоls
показывает+
. Вы уверены, что смотрите один и тот же файл каждый раз? (это обычно причина для меня)Ответы:
Наша проблема была решена с помощью:
Дело в том, что нам также пришлось удалить aclMask из каталога с опцией -n ... Страница руководства
setfacl
говорит следующее:Мы не уверены, почему этот вариант работал, но он сделал ...
В случае, если вы получите
d?????????
разрешение после вышеупомянутого решения, попробуйтеchmod -R a+rX
как два комментария ниже.источник
d?????????
это странноchmod -R a+rX
столица XСтранно ... не может воспроизвести:
К сожалению, у меня нет доступа к BSD для тестирования прямо сейчас.
Системная информация:
источник
setfacl -bn foobar
но я не знаю, почему этаn
опция работала.