![setfacl은 모든 쓰기 액세스를 제거합니다.](https://linux55.com/image/37727/setfacl%EC%9D%80%20%EB%AA%A8%EB%93%A0%20%EC%93%B0%EA%B8%B0%20%EC%95%A1%EC%84%B8%EC%8A%A4%EB%A5%BC%20%EC%A0%9C%EA%B1%B0%ED%95%A9%EB%8B%88%EB%8B%A4..png)
다른 권한은 유지하면서 모든 사용자 또는 그룹의 파일 및 디렉터리에 대한 모든 쓰기 권한을 제거하고 싶습니다. 가능합니까?
답변1
모든 사람의 쓰기 액세스 권한을 제거하려면 ACL이 필요하지 않습니다. 기존 권한을 사용하면 됩니다.
chmod -R a-w /path/to/directory
사용자는 자신이 소유한 파일에 대한 권한을 다시 변경할 수 있습니다. 이는 ACL을 사용하여 수행하는 모든 작업에도 적용됩니다.
ACL을 사용하여 파일에 대한 기존 권한을 유지하려면 시스템의 모든 사용자 또는 최소한 모든 그룹을 나열해야 합니다.
파일 시스템이 ext2/ext3/ext4인 경우 다음을 설정할 수 있습니다.불변 속성. 루트만이 불변 속성을 변경할 수 있으며 모든 쓰기를 차단합니다.
chattr -R +i /path/to/directory
문제는 디렉토리를 개인 위치에 마운트하고 다음을 통해 읽기 전용 보기에 노출하면 해결될 가능성이 높습니다: bindfs
.see특정 하위 폴더의 모든 파일에 대한 읽기 전용 액세스