umask를 변경하지 않고 디렉토리에서 chmod g+w+s(Linux)?

umask를 변경하지 않고 디렉토리에서 chmod g+w+s(Linux)?

ACL을 사용하지 않고 동일한 Posix 그룹의 다른 사용자가 쓸 수 있는 디렉터리에 새 파일을 만들고 싶습니다. 이것이 가능한지 확실하지 않습니다.

과거에 이 작업을 수행한 방법은 각 사용자를 umask로 변경 0002한 다음 chmod g+w+s공유 파일이 포함된 디렉터리로 변경하는 것입니다(간결하게 출력 편집됨).

$ mkdir shared ## create a shared location
$ ls -lart
drwxr-xr-x  2 user234 sysadmin 4096 Mar  1 10:02 shared

$ groups ## must be member of group to share with
sysadmin webdevel sysconfig

$ chmod g+w+s shared ## set new files for group write/:sysconfig ownership
$ chown :sysconfig shared
$ ls -lart
drwxrwsr-x  2 user234 sysconfig 4096 Mar  1 10:02 shared

$ touch shared/file1 ## need umask for group write?
$ ls -lart shared/file1 
-rw-r--r-- 1 user234 sysconfig 0 Mar  1 10:03 shared/file1

$ umask
0022          ## no group write bits

$ umask 0002  ## set umask to add group write by default

$ touch shared/file2 ## ok fine                                                                                                
$ ls -lart shared/file2
-rw-rw-r-- 1 user234 sysconfig 0 Mar  1 10:03 shared/file2

$ touch ~/tps_reports  ## files created in home are GW now as well
$ ls -lart ~/tps_reports
-rw-rw-r-- 1 user234 sysadmin 0 Mar  1 10:08 /home/user234/tps_reports

변경 사항의 문제 umask는 사용자가 다른 곳(예: 일반적으로 그룹 읽기/쓰기가 필요하지 않은 홈 디렉터리)에서 파일을 생성할 때 해당 파일에도 기본적으로 그룹 쓰기가 포함되어 umask로컬 파일 시스템의 파일에 영향을 미친다는 것입니다. ACL이 이 문제에 대한 유일한 해결책입니까?

관련 정보