Parece que está describiendo la funcionalidad de bit setgid donde, cuando un directorio que lo tiene configurado, forzará a los archivos nuevos creados dentro de él a tener su grupo configurado en el mismo grupo que está configurado en el directorio padre.
Ejemplo
$ whoami
saml
$ groups
saml wheel wireshark
configurar un directorio con permisos + propiedades
$ sudo mkdir --mode=u+rwx,g+rs,g-w,o-rwx somedir
$ sudo chown saml.apache somedir
$ ll -d somedir/
drwxr-s---. 2 saml apache 4096 Feb 17 20:10 somedir/
toca un archivo como saml en este directorio
$ whoami
saml
$ touch somedir/afile
$ ll somedir/afile
-rw-rw-r--. 1 saml apache 0 Feb 17 20:11 somedir/afile
Esto le dará aproximadamente lo que parece que desea. Sin embargo, si realmente desea exactamente lo que ha descrito, creo que tendrá que recurrir a la funcionalidad de listas de control de acceso para obtener eso (ACL).
Si desea obtener un poco más de control sobre los permisos en los archivos que se crean en el directorio, somedir
puede agregar la siguiente regla de ACL para establecer los permisos predeterminados de esta manera.
antes de
$ ll -d somedir
drwxr-s---. 2 saml apache 4096 Feb 17 20:46 somedir
establecer permisos
$ sudo setfacl -Rdm g:apache:rx somedir
$ ll -d somedir/
drwxr-s---+ 2 saml apache 4096 Feb 17 20:46 somedir/
Observe que +
al final, eso significa que este directorio tiene ACL aplicadas.
$ getfacl somedir
# file: somedir
# owner: saml
# group: apache
# flags: -s-
user::rwx
group::r-x
other::---
default:user::rwx
default:group::r-x
default:group:apache:r-x
default:mask::r-x
default:other::---
después
$ touch somedir/afile
$ ll somedir/afile
-rw-r-----+ 1 saml apache 0 Feb 17 21:27 somedir/afile
$
$ getfacl somedir/afile
# file: somedir/afile
# owner: saml
# group: apache
user::rw-
group::r-x #effective:r--
group:apache:r-x #effective:r--
mask::r--
other::---
Observe con los permisos predeterminados ( setfacl -Rdm
) configurados para que los permisos sean ( r-x
) por defecto ( g:apache:rx
). Esto obliga a que los archivos nuevos solo tengan r
habilitado su bit.