Unterschiede zwischen inaktiven und deaktivierten sowie aktiven und aktivierten Diensten

Unterschiede zwischen inaktiven und deaktivierten sowie aktiven und aktivierten Diensten

Die Konzepte „aktiv“ und „deaktiviert“ verwirren mich.

Kann das jemand erklären?

Antwort1

Die Manpage systemdenthält die gesuchten Informationen.

Auszug

systemd stellt ein Abhängigkeitssystem zwischen verschiedenen Einheiten namens „Units“ bereit. Units kapseln verschiedene Objekte, die für den Systemstart und die Wartung relevant sind. Die meisten Units werden in Unit-Konfigurationsdateien konfiguriert, deren Syntax und grundlegender Optionssatz in systemd.unit(5) beschrieben ist. Einige werden jedoch automatisch aus anderen Konfigurationen oder dynamisch aus dem Systemstatus erstellt.

Einheiten können „aktiv“ (d. h. gestartet, gebunden, eingesteckt, ..., abhängig vom Einheitentyp, siehe unten) oder „inaktiv“ (d. h. gestoppt, ungebunden, ausgesteckt, ...) sein. Sie können sich auch im Prozess der Aktivierung oder Deaktivierung befinden, also zwischen den beiden Zuständen (diese Zustände werden als „Aktivieren“ bzw. „Deaktivieren“ bezeichnet).

Es ist auch ein spezieller Status „Fehlgeschlagen“ verfügbar, der dem Status „Inaktiv“ sehr ähnlich ist und aufgerufen wird, wenn der Dienst auf irgendeine Weise fehlgeschlagen ist (der Prozess hat beim Beenden einen Fehlercode zurückgegeben, ist abgestürzt oder bei einer Operation ist die Zeit abgelaufen). Wenn dieser Status aufgerufen wird, wird die Ursache für spätere Bezugnahme protokolliert.

Beachten Sie, dass die verschiedenen Einheitentypen eine Reihe zusätzlicher Unterzustände haben können, die den fünf hier beschriebenen verallgemeinerten Einheitenzuständen zugeordnet sind.

Abbauen

Wenn Sie das oben Gesagte gelesen haben und den Unterschied immer noch nicht verstehen, finden Sie ihn hier in aller Kürze.

  • ermöglicht- ein Dienst (eine Einheit) ist so konfiguriert, dass er beim Systemstart gestartet wird
  • deaktiviert- ein Dienst (eine Einheit) ist so konfiguriert, dass er beim Systemstart nicht gestartet wird
  • aktiv- ein Dienst (eine Einheit) wird gerade ausgeführt.
  • inaktiv- Ein Dienst (eine Einheit) läuft derzeit nicht, kann aber gestartet, also aktiv werden, wenn versucht wird, den Dienst zu nutzen.

inaktiv

Letzteres mag am verwirrendsten erscheinen, aber denken Sie daran systemdähnlich wie xinetd. Es kann Ihre Dienste für Sie verwalten und sie bei Bedarf auf Anfrage starten. Wenn die Dienste also "ausgeschaltet" sind, befinden sie sich iminaktivZustand, aber wenn sie gestartet werden, können sieaktiv.

Dieser Zustand kann auch auftreten, wenn ein Dienst (eine Einheit) aktiviert, aber noch nicht manuell gestartet wurde. Der Dienst liegt also "schlafend" imgestopptoderfehlgeschlagenZustand, bis der Dienst entweder manuell gestartet wird oder das System einen Neustart durchführt, was dazu führen würde, dass der Dienstaktivaufgrund seiner Ermöglichung.

Antwort2

Wenn Sie einen Dienst aktivieren/deaktivieren, geben Sie im Wesentlichen an, ob er beim Booten automatisch gestartet werden soll.

Also systemctl enable lxdmwird LXDM als DM festgelegt. Es wird jedoch nicht sofort gestartet.

Andererseits informiert Sie „aktiv/inaktiv“ (und optional „fehlgeschlagen“) über den aktuellen Status des Dienstes. Nach dem Ausführen systemctl start lxdmwird LXDM tatsächlich ausgeführt und hat den Status „aktiv“.

Normalerweise testen Sie einen Dienst, wenn Sie ihn zum ersten Mal installieren, indem Sie ihn starten. Wenn er funktioniert, aktivieren Sie ihn. Auf diese Weise vermeiden Sie, dass Ihr System beim Booten hängen bleibt.

verwandte Informationen