it-swarm.com.de

16.04 Befehl zum Auflisten aller Dienste, die beim Booten gestartet wurden

Ich habe Mongodb v3.4 installiert. Dies startet beim Booten.

Ich frage mich also, wie ich herausfinden kann, was dieses Programm startet (und wie ich es deaktivieren kann, wenn es beim Booten gestartet wird).

Folgendes hat nicht funktioniert:

Wie kann ich verhindern, dass Mongodb beim Systemstart startet? (alt)

Befehl zum Auflisten von Diensten, die beim Start gestartet werden? (alt)

17
Karl Morrison

Soweit ich weiß, werden Dienste in Ubuntu automatisch aktiviert. Wenn Sie also etwas wie Apache installieren, wird es beim Booten gestartet.

Hier finden Sie einige Informationen

So finden Sie alle Dienste heraus, die beim Start ausgeführt wurden:

systemctl list-units --type service

dies zeigt alle Dienste an, die beim Booten geladen wurden und jetzt aktiv sind. Wenn Sie eine Liste aller Dienste erhalten möchten, unabhängig davon, ob sie aktiv sind oder nicht:

systemctl list-units --type service --all

Eine andere Sache, die Sie tun können, ist zu laufen:

systemctl list-dependencies --type service

dann drücke / und suche mongodb um zu sehen, was service/target davon abhängt und starte es.

Sie können auch ausführen:

locate mongodb.service

Was erzeugt so etwas wie:

/lib/systemd/system/multi-user.target.wants/mongodb.service

dann werden Sie wissen, dass es als Teil eines Mehrbenutzerziels gestartet wird. Alternative dazu ist:

$ systemctl cat mongodb.service | grep -i wantedby
WantedBy=multi-user.target

Deaktiviere es

Um herauszufinden, ob es aktiv ist (Wird beim Starten/Booten ausgeführt):

systemctl is-active mongodb

Es ist entweder active oder inactive; In Ihrem Fall sollte es active sein.

Um zu verhindern, dass es beim Booten gestartet wird, sollten wir es deaktivieren:

Sudo systemctl disable mongodb

Und um sicherzustellen, dass nichts anderes (kein anderer Dienst) es starten kann, maskieren wir es:

systemctl mask mongodb

daher wird es mit /dev/null verknüpft und kann nicht mehr automatisch oder manuell gestartet werden.

Ich kenne den Namen des mongodb -Dienstes nicht. Versuchen Sie, auf die Registerkarte zu klicken, damit dieser ausgefüllt wird. Ich denke, es ist mongodb;)

37
Ravexina

Um zu wissen, ob ein Dienst zum Startzeitpunkt aktiviert ist, lautet der richtige Befehl:

systemctl is-enabled Apache2
enabled

Sie können es selbst versuchen, indem Sie den Status mit ändern

systemctl enable Apache2
systemctl disable Apache2

(Dies ist nicht als Antwort gedacht)

7
BitLegacy01

Schauen Sie auch unter Einstellungen -> Sitzung und Start -> Autostart der Anwendung nach, ob Ihre Anwendung dort erwähnt wird.

0
user680858