umask
umask는 컴퓨팅에서 새로 만들어진 파일에 파일 권한을 어떻게 설정할지를 제어하는 마스크 설정을 결정하는 명령어이다.
발표일 | 1978년 |
---|---|
운영 체제 | 유닉스, 유닉스 계열 |
종류 | 명령어 |
역사
편집mask, umask 명령어와 umask 함수는 원래 유닉스의 구현체의 일부가 아니었다. 해당 운영 체제는 상대적으로 크기가 작은 컴퓨터 중심 환경에서 발전하였으므로 보안은 그다지 문제가 아니었다. 이후 각기 다른 단체의 수백 명의 사용자들로 성장해갔다. 처음에 개발자들은 주요 파일들의 생성 모드를 특히 실제 보안 위반에 대해 더 제한적으로 만들었으나 이는 일반적인 해결책이 아니었다. mask와 umask 명령어는 1978년 즈음 운영 체제의 7~9판 사이에 도입되었으므로 사이트, 그룹, 개인이 자신들의 기본값을 선택할 수 있게 되었다.[1]
셸 명령어
편집umask 명령어의 8진법 숫자 |
마스크의 이진값 |
마스크의 부정 |
논리 AND ("rwx" 요청)[2] |
---|---|---|---|
0 | 000 | 111 | rwx |
1 | 001 | 110 | rw- |
2 | 010 | 101 | r-x |
3 | 011 | 100 | r-- |
4 | 100 | 011 | -wx |
5 | 101 | 010 | -w- |
6 | 110 | 001 | --x |
7 | 111 | 000 | --- |
셸에서 마스크는 umask 명령어를 사용하여 설정할 수 있다. 명령어 문법은 다음과 같다:[3]
umask [-S ] [maskExpression]
(대괄호 안의 항목들을 선택사항이다.)
현재의 마스크 표시하기
편집umask 명령어에 어떠한 인자도 지정하지 않고 실행하면 현재의 마스크를 표시한다. 출력은 운영 체제에 따라 8진법 또는 심볼릭으로 표시된다.[4] -S 인자(예: umask -S)는 umask를 강제로 symbolic 표기를 사용하여 표시한다. 이를테면:
$ umask # 현재 값 표시 (8진법)
0022
$ umask -S # 현재 값을 symbolic으로 표시
u=rwx,g=rx,o=rx
같이 보기
편집각주
편집- ↑ “UNIX 8th Edition Manual, Bell Labs UNIX”. 《Manual》. AT&T Laboratories. 2013년 1월 14일에 확인함.
- ↑ Note: Operating systems usually will also strip off execute permissions on newly created files.
- ↑ “AST UNIX MANUAL:umask(1)”. 《Manual》. AT&T Laboratories. 2013년 5월 16일에 원본 문서에서 보존된 문서. 2013년 1월 14일에 확인함.
- ↑ 〈umask〉, 《The Single UNIX Specification, Version 2》 (manual), The Open Group, 1997, 2013년 1월 14일에 확인함