Gostaria de criar novos arquivos, criados em um diretório, graváveis por outros no mesmo grupo Posix sem usar ACLs. Não tenho certeza se isso é possível.
A maneira como realizei isso no passado foi alterar todos os usuários umask
para 0002
e, em seguida, chmod g+w+s
no diretório que contém os arquivos compartilhados (saída editada para brevidade):
$ 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
O problema com a alteração do umask
é quando os usuários criam arquivos else (por exemplo, em seus diretórios home onde o grupo de leitura / gravação não é normalmente desejado), eles também têm group-write por padrão, pois umask
afeta arquivos os sistemas de arquivos locais. As ACLs são a única maneira de corrigir isso?