macOS에서 사용자 설정 umask 설정하기

Mac의 모든 파일 및 폴더에는 권한 세트가 있습니다. 새 파일 또는 폴더를 생성하면 umask가 이러한 권한을 결정합니다.

다음 고급 단계는 주로 시스템 관리자와 명령어 라인에 익숙한 사용자를 대상으로 합니다. 파일 권한 및 umask를 수정할 때 주의하십시오. 잘못 수정하면 Mac에서 파일, 폴더 또는 앱의 보안이 약화되거나 앱이 작동하지 않을 수 있습니다.

권한 및 umask에 관하여

권한. Mac에 저장된 모든 파일, 폴더 및 앱에는 권한 설정이 있습니다. 권한 설정은 어떤 사용자 계정이 해당 파일, 폴더 또는 앱을 읽거나, 쓰거나 또는 실행할 수 있는지 결정합니다. 이러한 권한에는 POSIX 권한 및 ACL(접근 제어 목록)이 포함됩니다. umask 값을 조정하여 사용자의 POSIX 권한을 더 제한적이거나 덜 제한적으로 설정할 수 있습니다.

umask. 파일에 대한 POSIX 권한은 세 자리 숫자로 표시됩니다. 터미널에서 이러한 방식으로 표시되는 권한을 볼 수 있습니다. 각 숫자는 0과 7 사이입니다. 파일을 생성할 때 기본값(일반적으로 파일의 경우 666, 폴더의 경우 777)에서 umask 값을 빼서 새 파일 또는 폴더의 권한을 결정합니다. 예를 들어 기본 umask가 022이면 새 파일의 권한은 644, 새 폴더의 권한은 755가 됩니다. 

여러 위치에 umask를 설정할 수 있으며 각 위치마다 영향을 미치는 앱이 다릅니다. umask를 잘못 설정하면 파일에 대한 접근 권한을 잃거나 다른 사용자에게 접근 권한을 부여할 수 있습니다. 자세한 내용은 chmod(1) 설명서 페이지의 MODES 섹션을 참조하십시오.

사용자 앱의 umask

관리자로 로그인한 뒤 터미널에 다음 명령을 입력하여 nnn을 027 또는 002와 같은 umask 값으로 대체합니다. 이 명령은 열려 있는 모든 앱에 대해 사용자의 umask를 설정합니다. 여기에는 명령어 라인에서 접근하는 앱과 이러한 앱이 생성하는 새 파일도 포함됩니다. 이 명령을 입력한 후 Mac을 재시동해야 할 수 있습니다. 

sudo launchctl config user umask nnn

터미널이 '구성을 쓸 수 없음: 해당 파일 또는 디렉토리 없음'이라고 응답하는 경우 시동 디스크에 /private/var/db/com.apple.xpc.launchd/config 폴더가 있는지 확인합니다. 구성 폴더가 없는 경우 다음 명령을 입력하여 구성 폴더를 생성한 후 다시 시도합니다.

sudo mkdir -m 755 /private/var/db/com.apple.xpc.launchd/config

시스템 프로세스 umask

관리자로 로그인한 뒤 터미널에 다음 명령을 입력하여 nnn을 027 또는 002와 같은 umask 값으로 대체합니다. 이 명령은 시스템 컨텍스트에서 실행되는 모든 데몬에 대해 사용자의 umask를 설정합니다. 시스템 소프트웨어에서 사용하는 파일의 권한이 변경될 수 있기 때문에 이 작업은 전혀 권장되지 않습니다. 권한이 너무 제한적이면 소프트웨어가 작동하지 않을 수 있으며, 권한이 너무 개방되어 있으면 보안 문제가 발생할 수 있습니다. 이 명령을 입력한 후 Mac을 재시동해야 할 수 있습니다. 

sudo launchctl config system umask nnn

터미널이 '구성을 쓸 수 없음: 해당 파일 또는 디렉토리 없음'이라고 응답하는 경우 시동 디스크에 /private/var/db/com.apple.xpc.launchd/config 폴더가 있는지 확인합니다. 구성 폴더가 없는 경우 다음 명령을 입력하여 구성 폴더를 생성한 후 다시 시도합니다.

sudo mkdir -m 755 /private/var/db/com.apple.xpc.launchd/config

더 알아보기

umask 설정에 대해 자세히 알아보려면 터미널에 man launchctl을 입력합니다.

게시일: