Setgid bit işlevselliğini tanımladığınız gibi görünüyor, burada bir dizinin ayarlandığı zaman, içinde oluşturulan tüm yeni dosyaları gruplarını üst dizinde ayarlanan gruba ayarlamaya zorlar.
Örnek
$ whoami
saml
$ groups
saml wheel wireshark
izinleri + sahipliğini içeren bir dizin ayarla
$ 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/
bu dizinde bir dosya olarak saml olarak dokunun
$ whoami
saml
$ touch somedir/afile
$ ll somedir/afile
-rw-rw-r--. 1 saml apache 0 Feb 17 20:11 somedir/afile
Bu, yaklaşık olarak istediğiniz gibi görünmesini sağlar. Tam olarak tanımladığınız şeyi gerçekten istiyorsanız, bunu elde etmek için Erişim Kontrol Listeleri işlevselliğine başvurmanız gerekeceğini düşünüyorum (ACL'ler).
Dizinde oluşturulan dosyalardaki izinler üzerinde biraz daha denetim somedir
sahibi olmak istiyorsanız, bunun gibi varsayılan izinleri ayarlamak için aşağıdaki ACL kuralını ekleyebilirsiniz.
önce
$ ll -d somedir
drwxr-s---. 2 saml apache 4096 Feb 17 20:46 somedir
izinleri ayarla
$ sudo setfacl -Rdm g:apache:rx somedir
$ ll -d somedir/
drwxr-s---+ 2 saml apache 4096 Feb 17 20:46 somedir/
Dikkat +
sonunda, bu dizin uygulanmış EKL'lerini anlamına gelir.
$ 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::---
sonra
$ 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::---
Varsayılan izinlerin ( setfacl -Rdm
) ayarlanmasına dikkat edin, böylece izinler r-x
varsayılan olarak ( g:apache:rx
) olur ( ). Bu, herhangi bir yeni dosyayı yalnızca r
bitlerini etkinleştirmeye zorlar .