이것이 내 생각에 일어나고 있는 일이다.
Unix에서 파일 삭제 기능은 파일이 있는 디렉터리의 쓰기 가능성에 따라 제어됩니다. 이는 궁극적으로 파일의 쓰기 가능성에 영향을 미칩니다. 파일을 삭제하고 교체할 수 있기 때문입니다.
드릴을 설정할 수 있어요. 이는 약간의 도움이 되지만 파일 소유자는 이를 무시합니다.
궁극적으로 소유자가 모든 권한을 변경할 수 있다는 것을 알고 있습니다. 그런데 권한을 변경하지 않고(실수로) 파일이 삭제되는 것을 방지할 수 있는 방법이 있나요?
저는 Gnu/Linux 솔루션에 관심이 있습니다. 그러나 이 문제에 대한 해결책이 없다면 주변 변형(plan 9, mac-os, bsb, Solaris, athena 등...)을 포함한 모든 Unix에 대한 솔루션에 관심이 있을 것입니다.
예를 들어 chattr +i file
사용자만 설정할 수 있는 불변 비트입니다 (그래서 별로 유용하지 않음).CAP_LINUX_IMMUTABLE
root
답변1
현재 Linux는 표준 Unix "rwx" 액세스 제어를 상속합니다. 즉, 현재 권한 모델을 심각하게 재설계하지 않으면 커널이 파일 소유자의 파일 삭제를 거부하는 것이 불가능하다는 의미입니다.유능한이것을 제한합니다. (커널은 파일을 관리하고 거부할 수 있습니다.어느사용자 활동. 그러나 현재 커널에는 제어할 권한 비트가 너무 적음)
루트가 아닌 경우 소유자에 대해서만 모드를 설정해 볼 수 있습니다(예 chmod 444 file
: 수정할 때마다 쓰기 저장 비트를 설정해야 함). 일부 소프트웨어(예: vim
)는 알림 없이 이 비트를 자동으로 재설정할 수 있지만 기본적으로는 이 작업을 수행하지 않습니다.
sudo
불변 플래그는 권한이 없는 사용자로 플래그를 변경할 수 있는 메커니즘이나 이와 유사한 경우에만 도움이 됩니다 .
당신은 또한 볼 수 있습니다기존의 "rwx" 및 POSIX ACL 외에 고급 파일 시스템 ACL이 있습니까?. ACL(POSIX 아님)는 다음을 정의하여 해결할 수 있습니다.제거하다허용하다.