In Linux is een daemon een proces dat op de achtergrond draait zonder directe betrokkenheid van de gebruiker. Daemons maken deel uit van het besturingssysteem en bieden een aantal functies zoals netwerkservices, schijfservices, afdrukservices, enz.
Worden meestal uitgevoerd bij het opstarten van het systeem en blijven actief op de achtergrond totdat het systeem wordt afgesloten. Ze hebben geen directe gebruikersinterface en worden meestal beheerd via configuratiebestanden of opdrachtregelopdrachten.
Linux daemons hebben meestal een naam die eindigt op "d", zoals httpd, named en sshd. Ze worden gestart met speciale commando's zoals systemctl
, service
of daemon
. Ze zijn een belangrijk onderdeel van het Linux-besturingssysteem omdat ze ervoor zorgen dat verschillende diensten en toepassingen op de achtergrond werken en draaien.
Daemons in Linux kunnen op verschillende manieren worden gestart. Laten we eens kijken naar de meest voorkomende manieren om ze te starten.
Het service
commando kan gebruikt worden om daemons te starten, stoppen en herstarten op Linux systemen die init scripts gebruiken. Om bijvoorbeeld de Apache HTTP Server daemon te starten, voer je het volgende commando uit:
sudo service apache2 start
Het systemctl
commando wordt gebruikt om daemons te beheren op Linux systemen die systemd
gebruiken. Om bijvoorbeeld de SSH-daemon te starten, moet je het volgende commando uitvoeren:
sudo systemctl start sshd
In sommige Linux-distributies kunnen daemons worden gestart via init-scripts, die zich in de map /etc/init.d
bevinden. Om bijvoorbeeld de MySQL daemon te starten, moet je het volgende commando uitvoeren:
sudo /etc/init.d/mysql start
Op Linux systemen die systemd
gebruiken, wordt het aanbevolen om unit-bestanden te gebruiken om daemons te starten. Unit bestanden zijn tekstbestanden die een beschrijving bevatten van de service of het proces dat op het systeem gestart moet worden. Ze specificeren de parameters voor het starten van de daemon, zoals gebruiker, groep, werkmap, startcommando en andere opties.
Eenheidsbestanden worden opgeslagen in de map /etc/systemd/system/
. In deze map kun je je eigen unit-bestanden maken of bestaande wijzigen. Na het maken of wijzigen van een unit bestand, moet je systemd
herstarten met het systemctl daemon-reload
commando om de wijzigingen effect te laten hebben.