여러 사람이 액세스할 수 있는 "살아있는 파일"이 있습니다. 파일을 읽기 및 쓰기만 가능하게 하고 이동, 복사 또는 삭제는 불가능하게 만드는 방법이 유닉스에 있습니까?
이것의 목적은 네트워크에 파일의 복사본이 하나만 있도록 하는 것입니다.
답변1
파일과 파일이 있는 디렉터리(상위 디렉터리)가 완전히 별개의 사용자가 소유하고 페더레이션 그룹에 속한다고 가정합니다.
그룹이 파일의 상위 디렉터리를 쓸 수 없게 만들면 그룹 구성원이 파일을 삭제할 수 없게 됩니다. 그룹 구성원이 파일을 삭제할 수 없도록 설정하면 그룹 구성원이 상위 디렉터리에서 파일을 이동할 수 없도록 할 수 있습니다.
파일을 읽을 수 있게 만들 수 없습니다.그리고파일을 읽으면 본질적으로 사용자가 파일을 복사할 수 있으므로 복사할 수 없습니다.
"기타"에는 파일이나 상위 디렉터리에 대한 권한이 없습니다.
git
이상적으로는 사람들이 통제된 방식으로 파일에 대해 공동 작업을 수행할 수 있는 일종의 시스템(아마도 지원되는)을 사용하는 것입니다 . 이를 통해 액세스 제어, 원격 액세스 및 개정 제어가 더 쉬워집니다.
답변2
Solaris(ZFS)에서는 다음을 호출할 수 있습니다.
chmod S+cu file
FreeBSD에서는 다음을 호출할 수 있습니다:
chflags sunlink file
Linux에서는 다음을 호출할 수 있습니다.
chattr +u file
모든 경우에 플래그를 설정하려면 수퍼유저여야 합니다.
Linux는 ext* 파일 시스템에서 이 기능을 지원하지 않습니다.