![파일 시스템 ACL(setfacl)은 ACL 재귀 처리의 "mkdir -p"와 동일합니다.](https://linux55.com/image/94509/%ED%8C%8C%EC%9D%BC%20%EC%8B%9C%EC%8A%A4%ED%85%9C%20ACL(setfacl)%EC%9D%80%20ACL%20%EC%9E%AC%EA%B7%80%20%EC%B2%98%EB%A6%AC%EC%9D%98%20%22mkdir%20-p%22%EC%99%80%20%EB%8F%99%EC%9D%BC%ED%95%A9%EB%8B%88%EB%8B%A4..png)
다음 디렉토리 구조를 고려하면
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 비트를 설정하지 않고도 가능하다는 것입니다.