İlk başta bir dosya oluşturuyorum ve standart izinleri ve ACL girişlerini kontrol ediyorum:
$ touch file; ls -l file; getfacl file
-rw-r--r-- 1 user user 0 Jul 30 16:26 file
# file: file
# owner: user
# group: user
user::rw-
group::r--
other::r--
Sonra dosyadaki ACL maskesini ayarladım ve tekrar standart izinleri ve ACL girişlerini kontrol ediyorum:
$ setfacl -m mask:rwx file
$ ls -l file; getfacl file
-rw-rwxr--+ 1 user user 0 Jul 30 16:26 file
# file: file
# owner: user
# group: user
user::rw-
group::r--
mask::rwx
other::r--
ACL maskesi ile birlikte dosyadaki standart grup izninin de değiştiğini unutmayın.
- EKL maskesi ile standart grup izni arasında hangi bağlantı var?
- ACL maskesi ve dosya grubu izinlerini birleştirmenin nedeni nedir? Arkasında ne mantık var?
Söz konusu dağıtımlar Debian Linux 7.6 ve CentOS 7'dir
DÜZENLE
Bu noktada, standart dosya grubu izinleri ile ACL maskesi arasındaki ilişkileri araştırırken bulduğum bazı bulguları paylaşmak istedim. İşte bulduğum ampirik gözlemler:
ACL maskesi değiştirilebilir:
setfacl -m m:<perms>
komutla doğrudan ayarlayarak ;chmod
komutla dosya grubu izinlerini değiştirerek (ACL maskesi zaten varsa; dosyada adlandırılmış kullanıcı veya grup ACL izinleri yoksa isteğe bağlı olduğu için mevcut olmayabilir);- adlandırılmış kullanıcı veya grup ACL girişi ekleyerek (maske otomatik olarak yeniden hesaplanır).
Maske, yalnızca maske doğrudan setfacl tarafından veya chmod ile dosya grubu izninin değiştirilmesi (otomatik olarak hesaplanmaz) ile ayarlanırsa, maksimum erişim haklarını uygular (izinleri olan ACL maskesi izinlerini aşan ACL girişleri varsa). ACL girişlerinde yapılacak herhangi bir değişiklik ACL maskesi otomatik yeniden hesaplamasını tetikler ve "zorlama modunu" etkin bir şekilde kapatır.
ACL'leri kullanırken standart dosya grubu izinlerini dolaylı olarak etkileyen birkaç yan etki vardır:
- Bir dosyaya uygulanan adlandırılmış kullanıcı veya grup ACL girişi, ACL maskesini değiştirebilir (izinlerini artırabilir) ve dolayısıyla etkili dosya grubu izinlerini değiştirebilir. Örneğin, bir dosya sahibi olarak "rw-r - r-- jim öğrencileri" izinleri ayarladıysanız ve "jack" kullanıcısına da rw izni verirseniz, dolaylı olarak herkese rw izinleri verirsiniz. "öğrenciler" grubundan.
- Daha katı (daha az izin) ACL maskesi karşılık gelen standart dosya grubu izinlerini kalıcı olarak kaldırabilir. Örneğin, rw standart dosya grubu izinlerine sahip bir dosyanız varsa ve dosyaya salt okunur bir ACL maskesi uygularsanız, grup izinleri salt okunur olarak azalacaktır. Ardından, tüm genişletilmiş ACL girdilerini (
setfacl -b
komutla) kaldırırsanız , grup izinleri salt okunur olarak kalır. Bu yalnızca daha sıkı ACL maskesi için geçerlidir, daha yumuşak ACL maskesi (daha fazla izin) kaldırıldıktan sonra orijinal dosya grubu iznini kalıcı olarak değiştirmez.