umask
따라서 이 형식을 사용하여 권한 있는 사용자를 제한하는 것이 가능하다는 것을 알고 있습니다 umask ugo
.
나는 읽기 = 4, 쓰기 = 2, exec = 1이라는 것을 알고 있습니다. 그런데 을 입력하면 umask
4자리 숫자가 나오는데, 이는 0022
OR 입니다 0073
. 추가 숫자가 있기 때문에 이것이 어떻게 작동하는지 지금은 이해할 수 없습니다. 그 여분의 숫자는 무엇입니까? 무슨 0022
뜻인가요?
답변1
기본 마스크 0666.0022가 umask
새 마스크 0644(0666-0022=0644)를 만든다고 가정하면 이 그룹과 다른 그룹에는 읽기(쓰기 또는 실행 없음) 권한이 있음을 의미합니다.
"추가" 숫자(첫 번째 숫자 = 0)는 특별한 패턴을 지정하지 않습니다.
패턴이 숫자로 시작하면 8진수로 해석되고, 그렇지 않으면 기호로 해석됩니다.
0은 1(고정 비트의 경우) 또는 6(SGID의 경우)과 마찬가지로 숫자입니다. 이와 같은 명령은 사용자 및 그룹에 읽기 및 쓰기 권한을 추가하는 chmod
등의 다른 방법을 통해 호출할 수 있습니다 . chmod ug+rw mydir
이 예의 패턴(ug+rw)은 숫자로 시작하지 않으므로 8진수로 해석되지 않고 기호로 해석됩니다.
바라보다en.wikipedia.org/wiki/Chmod#Symbolic_examples기호뿐만 아니라www.lifeaftercoffee.com/2007/03/20/special-permission-modes-in-linux-and-unix/몇 가지 특별한 패턴에 대해 알아보세요.
당신이 discover 를 먼저 사용할지는 모르겠지만 umask
기술적으로는 가능합니다. 이는 거의 항상 0으로 표시되는 이유를 설명합니다.
~에 귀속됨핑크 플로이드 x33
마스크의 첫 번째 숫자는 소유자/그룹/기타 모델에 잘 맞지 않는 특수 권한과 관련이 있습니다. 파일 권한에 4자리 숫자가 제공되면 첫 번째 숫자는 다음과 같은 특수 값을 나타냅니다.
4000 = SUID
2000 = SGID
1000 = sticky bit
set-user-ID의 약자인 SUID 비트는 실행 가능한 프로그램이 소유자의 유효 사용자 ID(uid)로 실행되도록 합니다. 즉, 프로그램은 누가 실행하든 소유자의 권한으로 실행됩니다. 이는 루트 권한이 필요하지만 일반 사용자가 실행하는 프로그램을 실행할 때 일반적입니다. passwd
이것이 그러한 예 중 하나입니다.
SGID 비트는 set-group-ID의 약자이며 매우 유사하지만 유효한그룹소유자의 ID(gid)입니다.
끈끈한 부분은 약간 복잡합니다. 더 자세히 알고 싶다면 맨페이지를 읽어보세요 sticky
.
이 비트는 디렉토리에도 사용할 수 있지만 의미가 변경됩니다.
기본적으로 이러한 추가 비트를 활성화할 수 있는 설정을 실제로 구성할 수 있다고는 생각하지 않지만 umask
아마 그렇게 하고 싶지 않을 것입니다.
~에 귀속됨사용자 470379