Umask 영구 설정 - Umask yeong-gu seoljeong

Umask 영구 설정 - Umask yeong-gu seoljeong

1. 허가권(권한) 기본값 설정하는 방법        :        umask


파일이나 디렉토리를 생성할 때 자동으로 적용 될 허가권을 정의하는 방법. 즉, 허가권을 지정할 수 있는 명령어에 대해 알아보도록 하겠습니다.

Umask 영구 설정 - Umask yeong-gu seoljeong

기본적으로 위에 그림처럼 'umask' 라는 명령어에 한칸 띄고 '변경할 umask 값'을 입력하면 해당 값으로 umask가 적용됩니다. 그러면,

디렉토리에 최고 권한 값 '777'에서 '변경한 umask 값'을 빼면 설정된 권한으로 디렉토리 권한이 설정됩니다.

파일에 최고 권한 값 '666'에서 '변경한 umask 값'을 빼면 설정된 권한으로 파일 권한이 설정됩니다.

실행해 보면서 알아보도록 하겠습니다.

1) 디렉토리와 파일 생성하여 권한 확인 & umask 값 확인
Umask 영구 설정 - Umask yeong-gu seoljeong

우선,

관리자계정으로 'a1' 디렉토리와 'c1'파일을 생성하였고,

사용자 계정으로는 'a2' 디렉토리와 'c2'파일을 생성하였습니다.

그러면 파란색 박스에 보이는 것 처럼,

관리자 계정의 디렉토리는 = 755로 권한이 설정됨, 파일은 = 644로 권한이 설정됨

사용자 계정의 디렉토리는 = 775로 권한이 설정됨, 파일은 = 664로 권한이 설정됨

을 알 수 있습니다(자동으로 설정이 되었습니다).

이러한 권한 값을 설정하는 명령어는 'umask'입니다.

Umask 영구 설정 - Umask yeong-gu seoljeong

'umask' 명령어를 치면, 관리자 계정에는 '0022'로, 사용자 계정에는 '0002'로 설정되어 있는 것을 알 수 있습니다.

그렇기에,

'최고 권한 값 - umask에 설정된 값 = 자동으로 생성되는 디렉토리와 파일의 권한'이 설정이 되는 것 입니다.

그리하여,

관리자 계정의 디렉토리 권한은 777 - 0022 = 755, 파일 권한은 666-0022 = 644 로 권한이 부여되며,

사용자 계정의 디렉토리 권한은 777- 0002 = 775, 파일 권한은 666-0002 = 664로 권한이 설정되는 것 입니다.

2) umask 값 변경하여 새로운 디렉토리, 파일 생성 후 변경된 권한 값 확인하기
Umask 영구 설정 - Umask yeong-gu seoljeong

'umask [변경된 umask값]' 을 입력하여 umask의 값을 22에서 21로 변경하고, 'aa'라는 디렉토리를 만들었더니

디렉토리 또는 파일 생성 시, 원래 고정된 권한 값은 755였는데, 756으로 권한이 변경된 것을 확인할 수 있습니다.

Umask 영구 설정 - Umask yeong-gu seoljeong

umask를 420으로 설정을 하면, 디렉토리의 고정 권한값은 357로 변경이 되는것을 생각할 수 있습니다.

반면에 파일의 고정 권한값은 246으로 변경이 되는 것을 확인할 수 있었습니다.

그러나, 이러한 umask 명령어로 생성된 디렉토리와 파일의 권한 값을 변경하는 것은 '일시적인 변경'입니다.

그래서 재부팅을 하면, 다시 원래대로 돌아가는 점 주의하시기 바랍니다.

3) 권한 값을 고정적으로 재부팅을 하더라도 변하지 않도록 설정하는 방법

umask 명령어를 통해 일시적인 변경이 아닌 고정적으로 권한 값을 변경해주려면,

- 파일, 디렉토리 고정적 권한 설정 값 변경은 = /etc/profile 에서

- 사용자 홈 디렉토리 고정적 권한 설정 값 변경은 = /etc/login.defs 에서 에디터로 수정하면 됩니다.

Umask 영구 설정 - Umask yeong-gu seoljeong
Umask 영구 설정 - Umask yeong-gu seoljeong

'vi /etc/profile'에 들어가서 ':set nu'명령어로 순서를 매기면, 60번째와 62번째에 umask값에 대한 내용이 보입니다. 이 umask 값을 변경해주면 고정적인 권한 값이 됩니다.

Umask 영구 설정 - Umask yeong-gu seoljeong
Umask 영구 설정 - Umask yeong-gu seoljeong

'vi /etc/login.defs'를 입력하여 64번째 줄에 보시면, umask 값이 보입니다.

이 umask는 사용자 홈 디렉토리에서 사용자가 파일이나 디렉토리를 생성할 때 생성되는 권한 값을 설정해줍니다.