Příkaz setfacl se používá ke změně oprávnění spojených s ACL souboru nebo adresáře. Příkaz setfacl má několik možností, některé z nejběžnějších jsou popsány v následující tabulce.
| Možnost | Popis | 
|---|---|
| -R | Rekurzivně nastavte volby ACL pro adresáře a jejich obsah. | 
| -s | Nastavte ACL objektu a nahradíte jakýkoli existující ACL. | 
| -m | Upravit existující ACL objektu. | 
| -x | Odeberte položky z existujícího ACL. | 
| -b | Odstraňte všechny položky ACL (kromě standardních oprávnění). | 
Syntaxe
Syntaxe příkazu setfacl je:
# setfacl [-bR] [-mx {acl_spec}] {file/directory names} Následuje příklad úpravy ACL v adresáři, kde je uživateli http udělen přístup pro čtení:
setfacl -m u:http:r-- /home/directory
Pokud při provádění příkazu setfacl narazíte na níže uvedenou chybu:
setfacl: command not found
můžete zkusit nainstalovat níže uvedený balíček podle vaší volby distribuce:
| Distribuce | Příkaz | 
|---|---|
| Debian | apt-get install acl | 
| Ubuntu | apt-get install acl | 
| Alpine | apk přidat acl | 
| Arch Linux | pacman -S acl | 
| Kali Linux | apt-get install acl | 
| CentOS | yum install acl | 
| Fedora | dnf install acl | 
| Raspbian | apt-get install acl | 
Odebrání ACL
Příkaz setfacl se také používá s volbou -x k odstranění aplikovaného ACL pro libovolného uživatele nebo skupinu. Jediný rozdíl při odebírání ACL z nastavení ACL je v tom, že při odstraňování neurčujeme oprávnění. Následující příklad ilustruje použití příkazu setfacl k odstranění ACL aplikovaného na soubor s názvem file1 pro uživatele geel a skupinové laboratoře:
$ setfacl -x u:geek,g:lab file1
K odstranění všech ACL ze souboru nebo adresáře můžeme použít volbu -b, jak je ukázáno v následujícím příkazu:
$ setfacl -b file1
Příklady příkazů setacl
1. Upravte ACL souboru pro uživatele s přístupem pro čtení a zápis:
# setfacl -m u:username:rw file
2. Upravte výchozí ACL souboru pro všechny uživatele:
# setfacl -d -m u::rw file
3. Odeberte ACL souboru pro uživatele:
# setfacl -x u:username file
4. Odeberte všechny položky ACL ze souboru:
# setfacl -b file