Wie listet man alle aktivierten Dienste von systemctl auf?

123

Wie kann ich alle enabled -Dienste von systemctl auflisten?

Ich weiß systmctl listet alle Dienste auf, aber ich möchte nur die enabled einmal erhalten.

    
oceanBT 05.07.2016, 20:17

4 Antworten

184

systemctl list-unit-files | grep enabled listet alle aktivierten auf.

Wenn du willst, welche gerade läuft , brauchst du systemctl | grep running .

Verwenden Sie das, wonach Sie suchen. Aktiviert bedeutet nicht, dass es ausgeführt wird. Und Laufen bedeutet nicht, dass es aktiviert ist. Sie sind zwei verschiedene Dinge.

Aktiviert bedeutet, dass das System den Dienst beim nächsten Start ausführt. Wenn Sie also einen Dienst aktivieren, müssen Sie ihn noch manuell starten oder neu starten und er wird gestartet.

Running bedeutet, dass es gerade läuft, aber wenn es nicht aktiviert ist, wird es beim Neustart nicht neu gestartet.

    
Dorian 05.07.2016, 20:52
42

man systemctl gibt an:

   --state=
       The argument should be a comma-separated list of unit LOAD, SUB, or ACTIVE states. When listing units, show only those in the specified
       states. Use --state=failed to show only failed units.

Erläuterung:

LOAD   = Reflects whether the unit definition was properly loaded.
ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
SUB    = The low-level unit activation state, values depend on unit type.

Sie können dies auch verwenden, um enabled units nur mit:

anzuzeigen
systemctl list-unit-files --state=enabled

Wenn eine Einheit enabled ist, bedeutet dies, dass das System sie beim Start startet. Obwohl etwas auf enabled gesetzt wird, tut dies auch nicht wirklich start , also müssen Sie das manuell tun oder das System neu starten, nachdem Sie es auf enabled gesetzt haben.

    
user364819 05.07.2016 20:58
31
  1. Um alle systemd -Dienste aufzulisten, die in state=active und sub=running

    sind
    systemctl list-units --type=service --state=running
    
  2. Um alle systemd serice aufzulisten, die in state=active und sub sind entweder läuft oder beendet

    systemctl list-units --type=service --state=active
    

Hoffe, das löst das Problem.

    
Ankit Kumar Honey 14.09.2017 05:59
0

Um "aktivierte" Dienste zu sehen, einschließlich solcher, die noch unter upstart / init laufen:

systemctl list-unit-files --type service --state enabled,generated

Um alle aktuell ausgeführten Dienste anzuzeigen, führen Sie Folgendes aus:

systemctl list-units --type service --state running
    
nix-power 30.07.2018 18:51

Tags und Links