Ubuntu: Linux voor mensen/Processen/Eigenschappen van processen

Elk proces heeft een aantal vaste eigenschappen:

  • Het procesidentificatienummer of PID: een uniek nummer dat gebruikt wordt om naat het proces te verwijzen.
  • Het PID van het proces dat dit proces gestart heeft: parent process ID of PPID- letterlijk: het PID van de ouder.
  • Het zogenaamde nice number: de mate van vriendelijkheid van dit proces: laat het nog veel processorcapaciteit over aan andere processen, of juist niet?
  • De terminal van waaruit dit proces opgestart werd, als het om een interaktief proces gaat. Dit wordt aangeduid met een tty number.
  • De gebruikersnaam van de gebruiker aan wie het proces toebehoort.
  • De groepsnaam van de groep aan wie het proces toebehoort.

Merk op dat de gebruikersnaam bestaat uit een echte gebruikersnaam (real username of RUID) en een effectieve gebruikersnaam (effective username of EUID). De echte gebruiker is diegene die het commando opstartte, de effectieve gebruikersnaam bepaalt de toegangsrechten. Gewoonlijk zijn RUID en EUID hetzelfde, en het proces heeft dezelfde toegangsrechten als de gebruiker. Een voorbeeld om duidelijk te maken wat hiermee bedoeld wordt: de browser firefox:

Voorbeeld code om na te doen

willy@ubunty:~$ which firefox
/usr/bin/firefox
willy@ubunty:~$ ls -l /usr/bin/firefox
lrwxrwxrwx 1 root root 30 2006-06-06 14:17 /usr/bin/firefox -> ../lib/mozilla-firefox/firefox
willy@ubunty:~$ ls -l /usr/libmozilla-firefox/firefox
rwxr-xr-x 1 root root 11170 2005-10-10 17:31 /usr/lib/mozilla-firefox/firefox

Wat zien we hier?

  • firefox zit in de /usr/bin map.
  • /usr/bin/firefox is een symbolische link naar /usr/lib/mozilla-firefox/firefox.
  • De eigenaar van dat bestand is root.

Uitleg

Wie ben ik? Gebruik het id commando om na te gaan als welke gebruiker je aan het werken bent.

De systeembeheerder, root, is de baas van het systeem en heeft alle rechten op alle bestanden. Men zou dus op het eerste zicht kunnen denken dat je met firefox meer zou kunnen dan met bijvoorbeeld het cat commando.

Voorbeeld code om na te doen

Probeer maar eens cat /etc/shadow, dus het bekijken van het bestand waarin de versleutelde wachtwoorden van alle gebruikers van het systeem zitten. Je zal zien dat dit niet lukt. Ook als je in firefox de URL file:///etc/shadow ingeeft, gebeurt er niet veel. Dit komt omdat je de browser opstart met je eigen toegangsrechten, en niet met die van de eigenaar van het commando (kan je nagaan m.b.v. ps -ef). Gelukkig maar, of het hele systeem van toegangsrechten zou op losse schroeven komen te staan.

Hetzelfde geldt voor de toegangsrechten van de groep die eigenaar is van het commando en jouw eigen groepsnaam, waarmee je het commando opstart.

Informatie afkomstig van https://nl.wikibooks.org Wikibooks NL.
Wikibooks NL is onderdeel van de wikimediafoundation.