FreeBSD 플래그 simmutable/uimmutable과 sunlink/uunlink 사이의 차이점이나 유사점은 무엇입니까?
읽다플래그를 수동으로 변경, 다음 플래그가 표시됩니다.
schg, schange, simmutable
set the system immutable flag (super-user only)
sunlnk, sunlink
set the system undeletable flag (super-user only)
uchg, uchange, uimmutable
set the user immutable flag (owner or super-user only)
uunlnk, uunlink
set the user undeletable flag (owner or super-user only)
불변 속성에 대한 현재 이해는 Linux 매뉴얼 페이지에서 설명하는 것과 같습니다 chattr
.
"i" 속성이 있는 파일은 수정할 수 없습니다. 삭제하거나 이름을 바꿀 수 없으며 파일에 대한 링크를 만들 수 없으며 파일에 데이터를 쓸 수 없습니다. 수퍼유저 또는 CAP_LINUX_IMMUTABLE 기능이 있는 프로세스만 이 속성을 설정하거나 지울 수 있습니다.
FreeBSD에서 "불변"과 "삭제 불가능"의 차이점은 무엇입니까?
답변1
시스템 호출의 맨페이지플래그 변경(2):
SF_IMMUTABLE The file may not be changed. SF_NOUNLINK The file may not be renamed or deleted. [...] UF_IMMUTABLE The file may not be changed. UF_NOUNLINK The file may not be renamed or deleted.
접두사가 있는 플래그SF_
슈퍼유저만 설정하거나 설정 해제할 수 있습니다. 다른 접두사는 다음과 같습니다.UF_
파일 소유자 또는 수퍼유저가 설정하거나 설정 해제할 수 있습니다.
노트: 이 플래그 중 하나가 SF_
설정되면 슈퍼유저가 아닌 사람은 플래그를 변경할 수 없으며, 슈퍼유저라도 securelevel이 0일 때만 플래그를 변경할 수 있습니다.
sysctl(8)을 사용하여 kern.securelevel 변수에 대한 보안 수준을 설정할 수 있습니다.