Naast de gewone lees-, schrijf- en uitvoerrechten kent Linux drie speciale permissiebits.
Een uitvoerbaar bestand met de SUID-bit draait altijd met de rechten van de eigenaar, niet van de gebruiker die het start. Zo kan een gewone gebruiker passwd uitvoeren — dat programma heeft root als eigenaar en moet /etc/shadow kunnen schrijven.
ls -l /usr/bin/passwd
# -rwsr-xr-x 1 root root ...
# ^ de 's' op de x-positie van de eigenaar = SUID
Op bestanden werkt SGID hetzelfde als SUID maar dan voor de groep. Op mappen zorgt SGID ervoor dat nieuwe bestanden de groep van de map erven in plaats van de primaire groep van de maker — handig voor gedeelde mappen.
Op een map voorkomt de sticky bit dat gebruikers elkaars bestanden verwijderen, ook al hebben ze schrijfrechten op de map. /tmp gebruikt dit standaard.
ls -ld /tmp
# drwxrwxrwt ... /tmp
# ^ de 't' = sticky bit
chmod u+s bestand # SUID zetten
chmod g+s map/ # SGID zetten
chmod +t /gedeeld/ # sticky bit zetten
chmod 4755 bestand # SUID via octaal (4xxx)