
학생들이 과제를 제출할 수 있는 "드롭 박스" 디렉터리가 있습니다. 해당 권한은 모든 학생이 이 그룹에 속하는 "drwx-wx---"로 설정됩니다. 이렇게 하면 폴더에서 쓸 수는 있지만 읽을 수는 없습니다. cs63 사용자(교직원이 사용하는 계정)가 모든 파일을 읽을 수 있도록 ACL을 설정하고 싶습니다. 나는 이것을 시도한다:
chmod +a "user:cs63 allow read,file_inherit,directory_inherit" Top
모든 드롭박스 디렉터리를 표시하는 최상위 디렉터리에 있습니다. "ls -lde"를 사용하여 속성을 보면 다음이 표시됩니다.
user:cs63 allow list,file_inherit,directory_inherit
"read"가 디렉토리에서 작동하지 않기 때문에 "read"가 "list"로 변경되었다고 가정합니다. 그러나 cs63이 모든 파일을 읽을 수 있도록(단순히 나열하는 것이 아니라) 지정하려면 어떻게 해야 합니까?
또한 올바른 ACL을 설정하면 이미 커밋된 파일에 적용됩니까, 아니면 향후 파일에만 적용됩니까?
SSH를 통해 서버에 연결하고 있으므로 이 모든 작업을 명령줄에서 수행해야 합니다.
편집하다:
@mindc의 제안을 시도했습니다.
chmod -R +a "user:cs63 allow read,file_inherit,directory_inherit" Top
대부분의 파일에서 작동하지만 다음과 같은 권한에서는 작동하지 않습니다.
drwx---rwx+ student cs63sp12
사용자 cs63이 cs63sp12의 구성원인 경우 하위 디렉토리에서 "ls -le"을 수행하면 다음과 같은 결과가 나타납니다.
0: user:cs63 allow list,file_inherit,directory_inherit
답변1
다음과 같이 전환 해 보세요 -R
.
chmod -R +a "user:cs63 allow read,file_inherit,directory_inherit" Top