A Linuxban a daemon egy olyan folyamat, amely a háttérben fut a felhasználó közvetlen közreműködése nélkül. A démonok az operációs rendszer részét képezik, és számos funkciót látnak el, például hálózati szolgáltatásokat, lemezszolgáltatásokat, nyomtatási szolgáltatásokat stb.
Általában a rendszer indításakor futnak, és a rendszer leállításáig aktívak maradnak a háttérben. Nincs közvetlen felhasználói felületük, és általában konfigurációs fájlokon vagy parancssori parancsokon keresztül kezelhetők.
A Linux daemonok neve általában "d"-re végződik, például httpd, named és sshd. Indításuk speciális parancsokkal történik, mint például a systemctl
, service
vagy daemon
. Fontos részét képezik a Linux operációs rendszernek, mivel biztosítják, hogy a különböző szolgáltatások és alkalmazások működőképesek legyenek és a háttérben fussanak.
A démonok a Linuxban többféleképpen indíthatók. Nézzük meg az indításuk leggyakoribb módszereit.
A service
parancsot használhatjuk a démonok indítására, leállítására és újraindítására olyan Linux rendszereken, amelyek init szkripteket használnak. Az Apache HTTP Server démon indításához például a következő parancsot kell futtatni:
sudo service apache2 start
A systemctl
parancs a démonok kezelésére szolgál a systemd-t
használó Linux rendszereken. Az SSH démon indításához például a következő parancsot kell futtatnia:
sudo systemctl start sshd
Egyes Linux disztribúciókban a démonok init szkripteken keresztül is indíthatók, amelyek az /etc/init.d
könyvtárban találhatók. Például a MySQL démon indításához a következő parancsot kell futtatnia:
sudo /etc/init.d/mysql start
A systemd-t
használó Linux rendszereken ajánlott unit fájlokat használni a démonok futtatásához. A unit fájlok olyan szöveges fájlok, amelyek tartalmazzák a rendszerben indítandó szolgáltatás vagy folyamat leírását. Megadják a démon indításának paramétereit, például a felhasználót, a csoportot, a munkakönyvtárat, az indítási parancsot és egyéb opciókat.
Az egységfájlok az /etc/systemd/system/
könyvtárban tárolódnak. Ebben a könyvtárban saját unit fájlokat hozhat létre, vagy módosíthatja a meglévőket. Egy egységfájl létrehozása vagy módosítása után újra kell indítani a systemd-t
a systemctl daemon-reload
paranccsal, hogy a módosítások hatályba lépjenek.