![ACL 보호 디렉터리에 액세스하려고 하면 ls에서 오류가 발생합니다.](https://linux55.com/image/207293/ACL%20%EB%B3%B4%ED%98%B8%20%EB%94%94%EB%A0%89%ED%84%B0%EB%A6%AC%EC%97%90%20%EC%95%A1%EC%84%B8%EC%8A%A4%ED%95%98%EB%A0%A4%EA%B3%A0%20%ED%95%98%EB%A9%B4%20ls%EC%97%90%EC%84%9C%20%EC%98%A4%EB%A5%98%EA%B0%80%20%EB%B0%9C%EC%83%9D%ED%95%A9%EB%8B%88%EB%8B%A4..png)
setfacl을 사용하여 디렉토리와 일부 파일을 설정했습니다.
jobq@workstation:~/Pool$ getfacl /etc/jobq
getfacl: Removing leading '/' from absolute path names
# file: etc/jobq
# owner: root
# group: jobq
user::rwx
user:jobq:rw-
group::r-x
group:jobq:rwx
mask::rwx
other::r-x
jobq@workstation:~/Pool$ sudo getfacl /etc/jobq/log.txt
getfacl: Removing leading '/' from absolute path names
# file: etc/jobq/log.txt
# owner: root
# group: jobq
user::rw-
group::rw-
group:jobq:rwx
mask::rwx
other::r--
jobq@workstation:~/Pool$ groups
jobq
그러나 다음과 같은 명령을 실행하면
ls -al /etc/jobq
권한 오류가 발생합니다.
ls: cannot access '/etc/jobq/log.txt': Permission denied
total 0
d????????? ? ? ? ? ? .
d????????? ? ? ? ? ? ..
사용자는 jobq
그룹에 속하므로 jobq
디렉터리에 대한 액세스 권한이 있어야 합니다. 제가 뭔가 오해한 게 있나요? 이 문제를 어떻게 해결할 수 있나요?
답변1
문제는 다음 ACL에 있습니다 /etc/jobq
.
user:jobq:rw-
이는 사용자가 jobq
디렉토리를 "검색"할 수 없어 ls
해당 내용이 표시되지 않음을 의미합니다.
이 문제를 해결하려면 권한을 추가해야 합니다 x
. 바라보다비트를 실행하고 읽습니다. Linux에서 디렉토리 권한은 어떻게 작동합니까?더 알아보기.
당신은 또한 볼 수 있습니다"그룹" 권한은 제한하고 "전 세계" 권한은 공개하시겠습니까?여기서 그룹 권한이 도움이 되지 않는 이유를 이해하세요. 따라서 또 다른 해결책은 사용자 ACL을 제거 jobq
하고 대신 그룹 권한을 사용하는 것입니다.