세션에 대한 기본 umask를 설정할 수 없습니다 0077
.
/etc/login.defs
값을 다음과 같이 편집하고 설정했습니다 077
.
UMASK 077
또한 다음 항목이 에 있는지 확인했습니다 /etc/pam.d/common-session
.
session optional pam_umask.so
이 구성은 su
사용자가 이를 사용하여 로그인할 때 작동하는 것처럼 보이지만 mdm을 통해 로그인할 때는 작동하지 않습니다. pam.d의 mdm 및 su 구성 파일에는 모두 공개 세션이 포함되어 있습니다.
username@hostname ~ $ umask
0022
username@hostname ~ $ su username
Password:
username@hostname ~ $ umask
0077
MDM 대신 GDM이나 LIGHTDM을 사용하는 경우에는 이 문제가 발생하지 않습니다.
이에 대한 가능한 이유에 대한 아이디어가 있습니까?
답변1
umask
이것은 귀하의 질문에 직접적으로 대답하지는 않지만 이 기술은 쉘 구성 파일의 일부로 어딘가에서 실행 중인 잘못된 명령이 있는지 이해하는 데 도움이 될 수 있습니다 .
$ bash -x -l -i -c 'exit' 2>&1 | grep 'umask'
-x
-> 디버깅 활성화-l
-> 로그인 쉘-i
->대화형 쉘-c
-> 명령
이는 exit
완료 시 쉘이 반환되도록 하기 위해 필요합니다.
예
$ bash -x -l -i -c 'exit' 2>&1 | grep umask
+ umask 002
$
나는 다음과 같은 제목의 U&L Q&A에서 위의 기술을 발견했습니다.bashrc에서 별칭을 사용할 때 충돌 가능성을 테스트하는 방법은 무엇입니까?.