두 명의 특정 사용자와 공유하고 싶은 디렉터리가 있습니다. 아직 콘텐츠는 없지만 파일과 하위 디렉터리를 추가하려면 우리 셋 모두가 필요하며 모든 항목(적어도 기본적으로)이 동일한 권한을 상속하는 것이 중요합니다. 우리 중 세 명은 모든 권한을 갖고 있었고 나머지는 아무것도 얻지 못했습니다.
나는 다음과 같은 방법으로 이를 달성했다고 생각합니다.
setfacl -m u:myfriend:rwx Directory
setfacl -d -m u:myfriend:rwx Directory
그러나 디렉토리에 테스트 파일을 생성하면 다음이 표시됩니다.
$$$ getfacl TESTFILE
# file: TESTFILE
# owner: me
# group: me
user::rw-
user:myfriend:rwx #effective:---
group::---
mask::---
other::---
마스크가 문제인 것 같은데 디렉토리의 마스크가 일치하지 않습니다. 디렉토리에서 getfacl을 실행하면 다음과 같은 결과가 나옵니다.
$$$ getfacl .
# file: .
# owner: me
# group: me
user::rwx
user:myfriend:rwx
group::---
mask::rwx
other::---
default:user::rwx
default:user:myfriend:rwx
default:group::---
default:mask::rwx
default:other::---
내가 여기서 뭘 잘못하고 있는 걸까? 감사해요!
답변1
파일이 생성된 후 파일의 ACL 마스크가 변경됩니다. 이런 일은 일어나서는 안 됩니다. 어떻게 이런 일이 일어나는지는 말할 수 없지만 그런 일이 일어나는 것으로 알려져 있습니다.
setfacl
이 파일을 호출하면 문제가 해결됩니다( --no-mask
제공되지 않는 한). 마스크를 명시적으로 설정할 수도 있습니다.
setfacl -m m:rw filename