В man acl
говорит:
2. else if the effective user ID of the process matches the qualifier of any entry of type ACL_USER, then
if the matching ACL_USER entry and the ACL_MASK entry contain the requested permissions, access is granted,
else access is denied.
Как я понимаю, если существует запись ACL_USER для пользователя, то доступ разрешен или запрещен в соответствии с этой записью и завершением алгоритма.
Создать файл и назначить ему права доступа:
echo "echo 123" > /file1
chmod 005 file1
setfacl -m u:test1:--- /file1
chown usertest:root /file1
и получить
userc@client:~$ getfacl /file1
getfacl: Removing leading '/' from absolute path names
# file: file1
# owner: usertest
# group: root
user::---
user:test1:---
group::---
mask::---
other::r-x
Если я правильно понимаю алгоритм, доступ для выполнения и чтения разрешен всем, кроме usertest
и test1
, но авторизация для test1
и выполнения файла:
test1@client:~$ sh /file1
123
т.е. получить права доступа от others
Почему запись ACL_USER для пользователя 'test1' не запрещает доступ для test1
?
PS диск установлен с «ACL»