파일 시스템 ACL(setfacl)은 ACL 재귀 처리의 "mkdir -p"와 동일합니다.

파일 시스템 ACL(setfacl)은 ACL 재귀 처리의 "mkdir -p"와 동일합니다.

다음 디렉토리 구조를 고려하면

drwx------  root  root  /path/to/must_be_accessible
drwx------  root  root  /path/to/not_allowed1
drwx------  root  root  /path/to/not_allowed2
drwx------  root  root  /path/to/not_allowed3

사용자읽기 전용아래의 모든 파일을 읽을 수 있어야 합니다./경로/to/must_be_accessible

아직 갈 길이 멀다

#># Give read_only-user read-access to the path
#>setfacl -m u:read_only:x  /path
#>setfacl -m u:read_only:x  /path/to
#>setfacl -m u:read_only:rx /path/to/must_be_accessible

#># Set default for future files / dirs and all actual files
#>setfacl -m d:u:read_only:rX,u:read_only:rX    /path/to/must_be_accessible

상위 디렉토리의 읽기 전용 사용자에게 실행 권한을 적용하는 "mkdir -p"와 동일한 기능이 있습니까? 내가 뭐 놓친 거 없니?

밝히다:

다음 구조를 구현해야 합니다.

# ls -lR
.:
drwx--x---+ 3 root root 15 16. Sep 16:47 path

./path:
drwx--x---+ 6 700 root 88 16. Sep 16:47 to

./path/to:
drwx--x---+ 2 700 root 6 16. Sep 16:47 must_be_accessible
drwx------. 2 700 root 6 16. Sep 16:47 not_allowed1
drwx------. 2 700 root 6 16. Sep 16:47 not_allowed2
drwx------. 2 700 root 6 16. Sep 16:47 not_allowed3

ACL은 다음과 같아야 합니다.

# getfacl --recursive path
# file: path
# owner: root
# group: root
user::rwx
user:read_only:--x
group::---
mask::--x
other::---

# file: path/to
# owner: 700
# group: root
user::rwx
user:read_only:--x
group::---
mask::--x
other::---

# file: path/to/must_be_accessible
# owner: 700
# group: root
user::rwx
user:read_only:r-x
group::---
mask::r-x
other::---

# file: path/to/not_allowed1
# owner: 700
# group: root
user::rwx
group::---
other::---

# file: path/to/not_allowed2
# owner: 700
# group: root
user::rwx
group::---
other::---

# file: path/to/not_allowed3
# owner: 700
# group: root
user::rwx
group::---
other::---

문제는 Must_be_accessible(바로가기...) 위의 모든 경로에 x 비트를 설정하지 않고도 가능하다는 것입니다.

관련 정보