디렉토리와 파일에 대한 다른 Umask

디렉토리와 파일에 대한 다른 Umask

디렉토리와 파일에 대해 서로 다른 umask를 설정하는 방법은 무엇입니까?

umask 003디렉토리 와 파일이 필요합니다umask 117

답변1

umask그것은 글로벌합니다 bash. 당신이 할 수 있는 한 가지는 mkdir실행 후 마스크를 변경하는 래퍼(스크립트 이름 지정)를 만드는 것입니다.

#!/bin/bash
umask 0701 ; /path/to/real/mkdir $1 ; umask 0604

이에 대한 답변은 다음과 같습니다.

기억하세요: 디렉터리의 경우 기본 권한은 ( rwxrwxrwx) 0777이고 파일의 경우 기본 권한은 입니다 0666. 이는 umask가 허용하더라도 셸 내에서 파일을 생성할 때 실행 권한을 얻지 못한다는 것을 의미합니다. 이는 보안을 강화하기 위해 수행된 것입니다.새 파일 생성에 대하여.

예:

[admin@host test]$ pwd
/home/admin/test
[admin@host test]$ umask
0002
[admin@host test]$ mkdir test
[admin@host test]$ touch test_file
[admin@host test]$ ls -l
total 4
drwxrwxr-x 2 admin admin 4096 Jan 13 14:53 test
-rw-rw-r-- 1 admin admin    0 Jan 13 14:53 test_file

umask 유닉스 사양이 파일에 대한 권한의 수학적 세부 사항에 대해서는 아무 것도 알려주지 않습니다. 결정하는 것은 셸 개발자(및 운영 체제 제조업체)의 몫입니다.

답변2

참고하세요표준 mkdir명령-m선택적으로 생성 시 권한 비트를 설정할 수 있습니다 .

-m mode

결과 디렉터리의 파일 권한 비트를 지정된 모드로 설정합니다. 모드 매개변수는 명령에 지정된 모든 형식이 될 수 있습니다 chmod(1). 기호 모드가 지정된 경우 작동 문자는 초기 +모드를 기준으로 해석됩니다 .-a=rwx

귀하의 경우 파일 권한에 대해 원하는 값으로 umask를 설정하고 해당 -m옵션을 사용하여 폴더를 만들 수 있습니다.

관련 정보