Access control list yani ACL bize herhangi bir dosya veya klasöre özel ek izinler eklememizi sağlar. Örneğin yarattığımız bir dosya sadece root kullanıcısı ve grubundayken bu dosyaya belli bir kullanıcı veya gruba yetki tanımlayabiliriz
setfacl komutu ile herhangi bir dosya ya da klasöre yetki verebiliriz.
Ör : setfacl -m u:kullaniciadi:rwx /dosyayeri/dosyaadi
Yukarıdaki örnekte m modify yani değiştirme anlamına gelir u komutunu kullanarak dosya aclsinde user yani kullanıcı yetkisi değiştirmek istediğimizi belirtiriz kullaniciadi’dan sonra gelen iki nokta üst üsteden sonrada vermek istediğimiz yetkileri belirtiriz. Bu örnekte rwx dir yani read write ve execute (okuma, yazma, çalıştırma) en sonda da bir boşluk bırakıp acl’sini değiştirmek istediğimiz dosya ya da klasörün adını yazarız.
Eğer herhangi bir gruba yetki vermek istersek u yerine g harfini kullanarak grup adını yazarız
Ör : setfacl -m g:grupadi:rwx /dosyayeri/dosyaadi
Eğer herhangi bir klasörün altındaki tüm dosya ve dizinlerin aclsini değiştirmek istiyorsak R harfini ekleriz
Ör : setfacl -Rm g:grupadi:rwx /klasör
Eğer herhangi bir kullanıcı veya grubu aclden çıkarmak istiyorsak x harfini kullanırız
Ör : setfacl -x g:grupadi /klasör
Eğer bir dosya veya klasördeki tüm acl ayarlarını kaldırmak vistiyorsak b harfini kullanırız
Ör : setfacl -b /klasör
getfacl komutuyla istediğimiz dosyanın aclsini görebiliriz
Ör : getfacl /klasöradı/dosyadi
Not:
- Herhangi bir dosyaya acl yetkisi verdiğimiz zaman ls -l yaptığımızda dosyanın izin yetkileri kısmında (+) artı işareti gözükür.
- Acl de ” w ” write yani yazma yetkisi verilse dahi sadece dosya sahibi dosyayı silebilir.