Tartalomjegyzék

< Linux

ACL

Telepítés, beállítás

Telepíteni kell az acl nevű csomagot. Debian GNU/Linuxon:

apt-get install acl

Ezek után újra kell csatolni a fájlrendszert. Derítsük ki mi a fájlrendszer azonosítója, ahol szeretnénk ezt használni. Ebben segíthet például a „df” parancs.

Legyen a választott partíció a /dev/sda1. Ekkor a következő módon csatolhatjuk újra a fájlrendszert:

mount -o remount,acl /dev/sda1

Újraindítás után persze ezek a beállítások elvesznek. Hogy a beállítás újraindítás után is érvényes legyen írjuk a /etc/fstab állományban a csatolási információkhoz az acl érvényesítését.

Például:

/dev/sda1 / ext3 acl,defaults,errors=remount-ro 0 1

Az ACL-k ezek után használhatók.

Típusok

ACL-bejegyzéstípusok

Típus Szöveges forma
tulajdonos user::rwx
megnevezett felhasználó user:name:rwx
tulajdonoscsoport group::rwx
megnevezett csoport group:name:rwx
maszk mask::rwx
egyéb other::rwx

Használat

Beállítás egy fájlra

Hozzunk létre a /home/munka/info/eredmeny.txt fájlt:

mkdir -p /home/munka/info
cd /home/munka/info
touch eredmeny.txt

Nézzük meg a fájl ACL beállításait:

getfacl eredmeny.txt

Az eredmény ehhez hasonló lesz:

# file: eredmeny.txt
# owner: root
# group: root
user::rw-
group::r--
other::r--

Az állományra jelenleg semmilyen ACL-t nem állítottunk be, az alapértelmezett beállításokat látjuk.

Adjunk a mari nevű felhasználónak olvasási és írási jogokat az eredmeny.txt fájlra:

setfacl -m u:mari:rw eredmeny.txt

Ezek után, ha lekérdezzük a beállításokat getfacl eredmeny.txt:

# file: eredmeny.txt
# owner: root
# group: root
user::rw-
user:mari:rw-
group::r--
mask::rw-
other::r--

Nézzük meg a szimpla ls -l parancs kimenetét:

-rw-rw--r--+ 1 root root 0 jún    22 20.53 eredmeny.txt

A „+” jelből láthatjuk, hogy valamilyen ACL be van állítva az állományra.

Most vegyük le a beállítást:

setfacl -x u:mari eredmeny.txt

Kérdezzük le a jogokat:

getfacl eredmeny.txt

Esetleg a maszkot is eltüntethetjük:

setfacl -x mask eredmeny.txt

A setfacl -m u::r és hasonló beállításoknál, ahol nem adunk meg felhasználót, olyan mintha a chmod parancsot használtuk volna.

Beállítás könyvtárra

De tekintsük meg a /home/munka/info könyvtár beállításait:

getfacl /home/munka/info
getfacl: Removing leading '/' from absolute path names
# file: home/pub/info
# owner: root
# group: root
user::rwx
group::r-x
other::r-x
setfacl -m user:jozsi:rwx,group:konyveles:rwx konyvtarnev

A -m hatására a jogok beállításra kerülnek.

A beállítások lekérdezése:

getfacl konyvtarnev

Az eredmény:

# file: konyvtarnev 
# owner: gizi 
# group: informatika
user::rwx 
user:jozsi:rwx 
group::r-x
group:konyveles:rwx 
mask::rwx 
other::---

ACL bejegyzések törlése

A következő utasítás az összes ACL bejegyzést törli az adott állományról vagy könyvtárról:

setfacl -b fájlnév

Rekurzívan (az alkönyvtárakban is):

setfacl -R -b könyvtárnév

Lásd még

attr

Az attr csomag lehetővé teszi a fájlrendszer-kiterjesztések beállításának lekérdezését, beállítását.

apt-get install attr
man getfattr
man setfattr

lsattr, chattr

Az ext fájlrendszerekben a 2 változattól van még egy plusz lehetőség, a lsattr és a chattr parancsokkal tudjuk kihasználni.

man lsattr
man chattr

Linkek

ACL Linuxon: