Gibt es einen Unterschied zwischen einem Daemon und einem Service?
Oder sind beide im Grunde genommen eine Anwendung, die sich im Speicher befindet, an einen bestimmten Port gebunden ist und Anfragen abhört / beantwortet?
Gibt es einen Unterschied zwischen einem Daemon und einem Service?
Oder sind beide im Grunde genommen eine Anwendung, die sich im Speicher befindet, an einen bestimmten Port gebunden ist und Anfragen abhört / beantwortet?
Antworten:
Dämonen und Dienste sind nicht dasselbe.
Ein "Dienst" kann sich entweder auf einen Dämon oder einen Dienst beziehen.
Ein Daemon ist eine Teilmenge von Diensten, die immer im Speicher ausgeführt werden und darauf warten, eine Anforderung zu bearbeiten.
Ein Nicht-Daemon-Dienst wird im Allgemeinen von xinetd verwaltet. xinetd wartet auf die Anforderung und startet dann den erforderlichen Dienst, um die Anforderung zu bearbeiten. Nachdem die Anforderung bearbeitet wurde, wird der Dienst erneut gestoppt.
Typische Nicht-Daemon-Dienste: rsync vsftpd
Typische daemonisierte Dienste: MySQL Apache
Dämonen und Dienste sind ein und dasselbe.
Beide müssen jedoch nicht an einen Port gebunden sein. HALd ist ein Daemon, der angeschlossene Hardware überwacht und ordnungsgemäß einbindet. crond ist ein Dämon, der die Züge pünktlich hält.
Ja, Daemons werden unter Unix-ähnlichen Boxen und Dienste unter Windows ausgeführt.
Vor einem Jahrzehnt gingen Dämonen auf unbestimmte Zeit weiter und Gottesdienste nicht.
Vor ein paar Jahrzehnten gingen Dämonen auch nicht auf unbestimmte Zeit weiter.
Also meinte ich wirklich Nein - es gibt keinen signifikanten Unterschied zwischen Diensten und Dämonen.
Beachten Sie, dass 'cron' ein Daemon ist. Es ist überhaupt nicht an das Netzwerk gebunden.
Da alle großen Linux-Distributionen heute systemd verwenden, ist es möglich nachzuschlagen, was systemd dazu sagt:
von man systemd
systemd ist ein System- und Service-Manager für Linux-Betriebssysteme.
...
Serviceeinheiten, die Dämonen und die Prozesse, aus denen sie bestehen, starten und steuern. Einzelheiten finden Sie unter systemd.service (5).
...
systemctl daemon-reexec (startet systemd neu)