![디렉토리가 "rx"이고 파일이 "---"가 되도록 umask를 설정하는 방법](https://linux55.com/image/37127/%EB%94%94%EB%A0%89%ED%86%A0%EB%A6%AC%EA%B0%80%20%22rx%22%EC%9D%B4%EA%B3%A0%20%ED%8C%8C%EC%9D%BC%EC%9D%B4%20%22---%22%EA%B0%80%20%EB%90%98%EB%8F%84%EB%A1%9D%20umask%EB%A5%BC%20%EC%84%A4%EC%A0%95%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95.png)
r-x
새로 생성된 디렉터리에 대한 기본 권한을 설정하고 싶습니다.다른 사람그리고 새로 생성된 파일(디렉토리가 아닌 파일)에는 ---
.
umask를 2로 설정하면 디렉토리 권한은 얻지 r-x
만 파일 권한은 얻지 못합니다 r--
.
내가 원하는 것을 달성할 수 있는 방법을 찾을 수 없습니다 umask
.
결국 내가 원하는 건다른 사람디렉터리를 탐색할 수 있지만 파일 내용을 읽을 수는 없습니다. 매우 합리적인 요구라고 생각하지만, 결국 그런 설정은 없는 것 같습니다.
답변1
명령을 사용하여 쉘 프롬프트에서 디렉토리를 생성하는 경우 다음을 mkdir
수행할 수 있습니다.
umask 7
mkdir() (umask 2 && command mkdir "$@")
셸 사용자 정의 파일( ~/.zshrc
for zsh
, ~/.bashrc
for bash
...)에 있습니다.
즉, umask를 7로 설정하되, umask 2로 mkdir
실수 mkdir
(같은 인수( ) 사용 )로 함수를 호출하도록 재정의합니다. "$@"
( (...)
하위 쉘이 생성되므로 umask 2
해당 함수 내에서만 적용됩니다.)