| In Unix-achtige besturingssystemen is een daemonproces (vaak afgekort tot "daemon") een achtergrondproces dat wordt uitgevoerd zonder een controlerende terminal. Dit betekent dat het niet rechtstreeks communiceert met de inlogsessie van een gebruiker. Daemons voeren doorgaans taken op systeemniveau uit, zoals het beheren van netwerkverbindingen, afdruktaken of het afhandelen van systeemlogboeken.
Hier volgt een overzicht van de belangrijkste kenmerken:
* Uitvoering op de achtergrond: Daemons draaien onafhankelijk van de login-shell van een gebruiker. Ze hebben geen gebruiker nodig om ingelogd te zijn om te kunnen functioneren.
* Geen bedieningsterminal: Ze hebben geen standaardinvoer (stdin), standaarduitvoer (stdout) of standaardfout (stderr) die aan een terminal is gekoppeld. Uitvoer wordt meestal omgeleid naar logbestanden of andere aangewezen locaties.
* Systeemtaken: Ze voeren essentiële taken op systeemniveau uit, vaak continu en voor onbepaalde tijd.
* Toegang op laag niveau: Ze werken meestal met geprivilegieerde toegang, waardoor verhoogde machtigingen nodig zijn om hun taken effectief uit te voeren.
* Conventioneel genaamd: Namen van daemon-processen eindigen vaak met een "d", zoals `sshd` (SSH-daemon), `httpd` (HTTP-daemon) of `named` (DNS-daemon).
Hoe ze verschillen van typische processen:
Een typisch programma dat vanaf een terminal wordt gelanceerd, communiceert rechtstreeks met de gebruiker via de terminal. Wanneer de terminal wordt gesloten, wordt het programma doorgaans beëindigd. Een daemon blijft echter actief, zelfs nadat de gebruiker die de daemon heeft gestart zich heeft afgemeld.
Hoe ze worden gestart:
Daemons worden vaak gestart tijdens het opstarten van het systeem met behulp van systeeminitialisatiescripts (zoals `systemd` in moderne systemen, of `init` in oudere systemen). Ze kunnen ook op verzoek door andere programma's of services worden gestart.
Daemons beheren:
Systeembeheerders gebruiken verschillende tools om daemons te beheren, waaronder:
* `ps`: Om actieve processen weer te geven, inclusief daemons.
* `top` of `htop`: Om het gebruik van systeembronnen te controleren, inclusief daemon-activiteit.
* `systemctl` (systemd): Om daemons te besturen die zijn gestart door systemd (start, stop, herstart, status). Dit is gebruikelijk in de meeste moderne Linux-distributies.
* `doden`: Om een daemon-proces te beëindigen (hoewel dit voorzichtig moet worden gebruikt).
In wezen zijn daemons de onbezongen helden van een Unix-achtig besturingssysteem, die stil en continu op de achtergrond werken om een soepele en efficiënte werking te garanderen. |