세션 시작 시 기본 umask 077이 적용되지 않음

세션 시작 시 기본 umask 077이 적용되지 않음

세션에 대한 기본 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에서 별칭을 사용할 때 충돌 가능성을 테스트하는 방법은 무엇입니까?.

관련 정보