Linux alatt a felhasználók gyakran ritkán gondolnak arra, hogy ki a fájl tulajdonosa. Amikor azonban szerver futtatásáról van szó, a helyzet megváltozik. A biztonság növelése érdekében a szerver saját felhasználót kap. Nem ritka, hogy a szerverek ugyanazt a csoportot használják, például www-data. Ezután nézzük meg, hogyan működik ez a funkció a fájlokkal és könyvtárakkal. Különös figyelmet fogunk fordítani a szimbolikus hivatkozásokra, mivel ezek problémát okozhatnak a nem biztonságos beállítások használatakor.
A fájljogosultságok szabványa a Linuxra a Unixból érkezett. Tehát minden objektumnak van egy felhasználója, csoportja ezen kívül leírja atöbbi felhasználó jogait(other). A jogosultságok három tételből állnak: olvasás, írás, végrehajtás. A jogosultságok módosítására az umask parancs szolgál, de a tulajdonos és a csoport közvetlen módosítására a chown parancsok szolgálnak. Az ls paranccsal megtekinthetők az aktuális jogosultságok.
A chgrp parancs általános nézete:
$ chgrp [options] new_group file_name
A chgrp parancs általános opcióinak listája:
-h - közvetlenül magával a szimbolikus linkekkel dolgozik;--dereference - a fájlokkal dolgozik, nem magukkal a szimbolikus linkekkel. Alapértelmezés szerint használatos;-R - egy könyvtár rekurzív feldolgozása annak teljes tartalmával együtt;-H - követi a szimbolikus linket és megváltoztatja a fájl/könyvtár attribútumait. A -R paraméterrel együtt használható;-L - követi a szimbolikus linket és folytatja a rekurzív feldolgozást. A -R paraméterrel együtt használható;-P - ha szimbolikus hivatkozással találkozik, csak azt dolgozza fel. A -R paraméterrel együtt használva az alapértelmezett érték;--reference=file_name - a mintacsoport használata;-c - a kimenet csak feldolgozáskor változik;-v - minden egyes feldolgozott objektumról információt ad ki.A chgrp parancs használatának legegyszerűbb példája. A következő a teljes www-data objektumot módosítja az aktuális mappában lévő fájlhoz:
$ sudo chgrp www-data file.txt
Ez pedig megváltoztatja a mappa mappájának www-data csoportját:
$ sudo chgrp www-data folder

A parancs nagyon kiszámítható módon működik, megváltoztatja a csoportjukat. A mappában lévő objektumok változatlanok maradnak. Ha szimbolikus linkeket kezel, akkor azok attribútumai változatlanok maradnak, de az objektum új csoportot kap. Ez a viselkedés hasonló a --dereference paraméter kezeléséhez.
Például ezek a parancsok szimbolikus linkekre alkalmazva a képernyőképen látható módon működnek:
$ sudo chgrp www-data sym_file.txt

Nézzük meg, hogyan működik a -h paraméter, amely megváltoztatja egy szimbolikus hivatkozás attribútumait:
$ sudo chgrp -h www-data sym_file

A csoportot nemcsak a könyvtárra, hanem a benne lévő összes fájlra is beállította. Vegyük észre, hogy a viselkedés megváltozott, mostantól a szimbolikus link feldolgozásakor az attribútumok magára a linkre, nem pedig az objektumra lesznek beállítva.
Hogy lássuk a -H és -L paraméterek közötti különbséget, nézzünk még néhány példát. Emlékezzünk arra, hogy ezeket a -R paraméterrel együtt kell használni:
$ sudo chgrp -RH www-data folder

A -H használatával megváltozott a viselkedés a szimbolikus linkek feldolgozásakor, most már úgy kezeli őket, mintha a függvények külön-külön lennének végrehajtva. A hivatkozások attribútumai nem változnak, maguknak az objektumoknak az attribútumai igen, és a rekurzív feldolgozás leáll, amikor könyvtárat váltunk.
$ sudo chgrp -RL www-data folder

Egyetlen funkciót hajt végre - megváltoztatja a fájlok és könyvtárak csoportját.

A szimbolikus hivatkozások feldolgozásakor rendkívül óvatosnak kell lennie, nehogy kárt tegyen a rendszerben.