생성된 새 파일에 대한 Linux 디렉터리 권한 상속

생성된 새 파일에 대한 Linux 디렉터리 권한 상속

다음 폴더가 있습니다

 drwxr-xr-x   7 root root 45056 Nov 25 12:39 data

하위 디렉토리와 파일이 모두 755개 포함되어 있습니다.

하지만 이 디렉토리 안에 새 파일을 만들면 권한을 얻게 됩니다.

-rw-r--r-- 1 root root    0 Nov 28  2013 new

이 디렉토리에 새 파일을 생성하는 방법은 수동으로 수행하지 않고 755를 사용합니다. chmod g+s를 시도했지만 아무 일도 일어나지 않았습니다.

아무팁이라도

답변1

비트 권한을 설정하는 유일한 방법은 umask를 이용하는 것입니다. 권한 666(8진수)을 사용하여 파일이 생성되면 umask는 어떤 비트가 0으로 바뀔지 결정합니다.

더 자세히 설명하려면: rwx rwx rwx는 각각 User Group World를 위한 것입니다. 각 비트가 1(111 111 111)로 설정된 경우 이는 0777(8진수)이 됩니다. 0666은 110:110:110 또는 rw_rw_rw입니다. 그게 말이 되기를 바랍니다.

umask는 기본적으로 022 - (8진수 022)입니다. 이는 어떤 비트가 유지되어야 하는지(0), 어떤 비트가 유지되어야 하는지(1)를 나타냅니다. (그렇게 하면 약간 직관적이지 않습니다.)

666 생성된 파일을 가져옵니다. 6 & ~0 = 6 6 & ~2 = 4 6 & ~2 = 4

따라서 생성된 파일은 644(rw-r--r--) 권한을 갖게 됩니다.

umask의 효과는 파일 생성 호출에 제공된 비트를 마스크하는 것입니다. 호출에 666이 걸리는 경우 "chmod a+x 파일"을 수동으로 수행하지 않고는 755로 만들 수 있는 방법이 없습니다.

또한 그룹 suid를 설정하는 g+s의 효과는 비트 권한이 아닌 소유 그룹을 설정하는 것입니다. Windows는 이 측면(ACL)에서 훨씬 더 세분화되어 있지만 Linux 파일 시스템에 ACL 권한을 추가하는 파일 시스템 확장이 있습니다.

관련 정보