pam_umask.so
[
debug
] [
silent
] [
usergroups
] [
nousergroups
] [
umask=mask
]
pam_umask는 현재 환경의 파일 모드 생성 마스크를 설정하는 PAM 모듈이다. 새로 생성되는 파일에 할당되는 기본 권한에 umask가 영향을 준다.
다음 위치에서 차례대로 umask 값을 얻으려고 시도한다.
사용자의 GECOS 필드의 umask= 항목
umask= 인자
/etc/login.defs의 UMASK 항목
/etc/default/login의 UMASK= 항목
GECOS 필드는 ',' 문자로 구분돼 있다. umask= 항목뿐 아니라 pri= 항목을 인식해서 세션의 나이스 우선순위 값을 설정하고, ulimit= 항목을 인식해서 세션 내의 프로세스가 만들 수 있는 파일 최대 크기를 설정한다.
debug
디버그 정보 찍기.
silent
정보성 메시지를 찍지 않기.
usergroups
사용자가 root가 아니고 사용자 이름이 주 그룹 이름과 같으면 umask의 그룹 비트를 소유자 비트와 같은 값으로 설정한다. (예: 022 -> 002, 077 -> 007)
nousergroups
위에서 설명한 usergroups 옵션의 반대다. 기본적으로 usergroups가 켜지도록 pam_umask를 컴파일했는데 런타임에 끄고 싶은 경우에 유용할 수 있다.
umask=mask
호출 프로세스의 파일 모드 생성 마스크(umask)를
mask
& 0777로 설정한다.
값을 8진수로 해석한다.
새 umask를 성공적으로 설정했다.
메모리 버퍼 오류.
응용에서 제공한 대화 함수에서 사용자명을 얻는 데 실패했다.
응용에서 제공한 대화 함수에서 PAM_CONV_AGAIN을 반환했다.
사용자 이름 알 수 없음.
알 수 없는 사용자.
다음 행을 /etc/pam.d/login
에 추가해서
로그인 시 사용자별 umask를 설정할 수 있다.
session optional pam_umask.so umask=0022