Ihr Linux -Computer stützt sich auf viele Hintergrundaufgaben, die als Dienste oder Dämonen bezeichnet werden. Auf systemd-basierten Verteilungen verfügen Sie über integrierte Befehle, mit denen Sie sehen können, welche Dienste ausgeführt, deaktiviert oder fehlgeschlagen sind.
Dienstleistungen und Daemons
Dienste und Daemons sind Hintergrundaufgaben, die ohne Benutzeroberfläche ausgeführt werden, keine menschliche Interaktion erfordern und normalerweise als Computer startet.
Zu einer Zeit wurden Dienste von gestartet von
drin
, was der erste Prozess war, der gestartet wurde. Die Details der Dienste wurden in einer Sammlung von Skripten im Verzeichnis „/etc/init/d“ stattfinden. Auf Nicht-Systemverteilungen ist dies immer noch der Fall.
In der Systemd -Welt werden Dienste von gestartet von
systemd
Dies ist der jetzt erste Prozess, der gestartet wird. Die Details der Dienste werden in gespeichert
Einheitsdateien
befindet sich im Verzeichnis „/usr/lib/systemd“.
Nach seiner Mannseite,
systemd
ist ein System- und Service -Manager. Du kannst den ... benutzen
Systemctl
Befehl zur Überprüfung und Steuerung verschiedener Aspekte des Systemd -Systems, einschließlich Diensten und Daemons.
Da wir hier systemd-spezifische Befehle betrachten, müssen Sie zunächst wissen, ob Sie a ausführen systemd-basiert Verteilung oder nicht.
VERWANDT: Warum Linux 'Systemd nach all den Jahren immer noch spaltend ist
init oder systemd basiert?
Die überwiegende Mehrheit der Linux -Verteilungen verwendet Systemd, einschließlich Arch, Red Hat und Debian, und viele der von ihnen abgeleiteten Verteilungen. Das schließt das ein Ubuntu Vertriebsfamilie, Fedora und seine Drehungen und Manjaro und die anderen Arch-basierten Verteilungen.
Es gibt jedoch Gabeln oder Aromen einiger dieser Verteilungen, die speziell erstellt wurden, um nicht die Verwendung von Systemd zu verwenden. Nicht nur das, sondern es gibt auch andere Init -Systeme, die jemand verwenden könnte, anstatt diejenigen, die in seiner Verteilung standardmäßig entstanden sind, wie z. starte es oder S6-Linux-Init .
Wenn Sie einen Linux -Computer verabreichen müssen, den Sie nicht selbst eingerichtet haben, besteht die einzige Möglichkeit, sicher zu sein, ob er systemd verwendet oder nicht, besteht darin, zu überprüfen. Wir können das tun, indem wir den Prozessbaum mit dem betrachten
Pstree
Befehl. Wir müssen nur die Oberseite des Baumes sehen - wir suchen schließlich nach dem allerersten Prozess -, sodass wir die Ausgabe durch die ausgehen lassen
Kopf
Befehl und fragen Sie nach den ersten fünf Einträgen.
Wir können das sehen
systemd
ist der erste Prozess, der nach dem Start ausgeführt wird, also haben wir definitiv eine systemd-basierte Installation von Linux.
VERWANDT: So verwalten Sie Prozesse aus dem Linux -Terminal: 10 Befehle, die Sie wissen müssen
Verwenden von SystemCTL zur Auflistung von Diensten
Der Befehl zur Auflistung von Diensten und Dämonen ist
Systemctl
. Wir können das verfeinern
Systemctl
Befehl mit dem
Typ
Und
Zustand
Optionen. Wir fragen
Systemctl
über Dienstleistungen im laufenden Zustand zu berichten.
Es wird eine Informationstabelle generiert. Wenn es zu groß oder zu Ihrem Terminalfenster ist, wird es in Ihrem Standarddatei -Viewer angezeigt, der wahrscheinlich sein wird
weniger
.
Um das rechte Ende der Tabelle zu sehen, drücken Sie die rechte Pfeiltaste. Um zur üblichen Ansicht zurückzukehren, drücken Sie die linke Pfeiltaste.
Drücken Sie die Q -Taste, um von weniger zu beenden. Die angezeigten Spalten sind:
-
Einheit
: Der Name des Dienstes oder des Daemons. Die Spalte trägt den Titel "Einheit", da alles, was in dieser Spalte ist, mit Informationen gestartet wurde
systemdin einer Einheitsdatei gefunden. - Belastung : Der Lastzustand des Dienstes oder des Daemons. Es kann geladen, nicht gegründet, schlecht gesetzt, fehlerhaft oder maskiert werden.
- Aktiv : Der Gesamtstatus, in dem sich der Service oder der Dämon befindet. Er kann aktiv, neu laden, inaktiv, fehlgeschlagen, aktivierend oder deaktiviert sein.
- Sub : Der Unterzustand des Dienstes oder des Daemons. Es kann tot, verlassen, gescheitert, inaktiv oder laufend sein.
- Beschreibung : Eine kurze Beschreibung der Einheit.
Wir können die Ausgabe von übergeben
Systemctl
durch
Grep
Wenn wir uns auf einen einzelnen Dienst konzentrieren möchten. Dieser Befehl isoliert den Tabelleneintrag für die
ssh
Service.
Bisher haben wir den Inhalt des Tisches gefiltert, indem wir das bereitstellen
Status = Laufen
Möglichkeit. Wir können stattdessen eine der möglichen Werte des Unterzustands verwenden: tot, beendet, fehlgeschlagen, inaktiv oder läuft.
Kombinationen von Substaaten können verwendet werden. Geben Sie sie als von Kommas getrennte Liste ein. Stellen Sie sicher, dass Sie zwischen den Optionen keine Whitespace einfügen. Beachten Sie, dass dies die Dienste findet, die übereinstimmen entweder Zustand.
Wenn Sie die rechte Pfeiltaste drücken, um die Spalten außerhalb des Bildschirms zu betrachten, zeigen wir, dass wir in der Liste eine Mischung aus beendeten und fehlgeschlagenen Diensten haben.
Standardmäßig,
Systemctl
listet Prozesse - Services und Daemons - auf, die von gestartet wurden von
systemd
Weil
systemd
fand eine Einheitsdatei mit einer gültigen Einheitsdatei für sie. Deshalb ist der Kurzbegriff für all diesen Prozess "Einheiten".
Es gibt eine Option, um explizit anzufordern
Systemctl
Um Einheiten aufzulisten, aber da es sich um die Standardaktion handelt, wird sie nicht oft verwendet.
Verwenden von SystemCTL zum Auflisten von Einheitsdateien
Wir können den Umfang des
Systemctl
Befehl durch Einbeziehung der
Listen-Einheit-Dateien
Möglichkeit. Dies berichtet nicht nur über Dienste und Dämonen, die gestartet wurden
Einheitsdateien
auf Ihrem Computer installiert.
Entferne den
Zustand
Option entfernt die Filterung. Die Ausgabe enthält alle installierten Einheitsdateien, unabhängig von ihrem Zustand.
Die Ausgabe enthält viel mehr Einträge als die Ergebnisse der vorherigen Befehle.
Auf unserem Testcomputer ist die Ergebnisliste fast viermal länger als die Ausgabe unserer vorherigen Befehle.
Wenn Sie das verwenden möchten
Zustand
Option, Sie können mehrere Zustände damit verwenden, wie wir zuvor gesehen haben. Die gleichen Regeln gelten. Geben Sie die Optionen als Comma -Trennwerte an und enthalten keine Whitespace.
In diesem Befehl werden alle Einheitsdateien aufgeführt, die entweder deaktiviert sind oder nicht starten.
Eine verringerte Anzahl von Ergebnissen wird angezeigt, gefiltert gemäß den Auswahlmöglichkeiten, die Sie mit der Option Status getroffen haben.
Betrachten Sie einen Service im Detail
Wenn etwas an einem Dienst oder einem Dämon Ihr Interesse weckt und einen tieferen Tauchgang verdient, können Sie ihn mit der Option "SystemCtl Status" ausführlich betrachten.
Schauen wir uns den SSH -Daemon SSHD an. Wir müssen lediglich die Statusoption und den Namen des Dienstes oder des Daemons verwenden.
- Der Name des Dienstes zusammen mit einer kurzen Beschreibung. Ein farbcodierter Punkt zeigt, ob er läuft oder nicht. Grün bedeutet, dass es läuft, rot bedeutet, dass es nicht so ist.
- Was geladen wurde, einschließlich des Pfades zur Einheitsdatei.
- Wie lange dauert es.
-
Wo sich die Dokumentation befindet in der
MannHandbuch. - Die Prozess -ID der laufenden Instanz.
- Wie viele gleichzeitige Fälle dieses Dienstes läuft. Normalerweise ist dies eins.
- Wie viel Gedächtnis wird konsumiert.
- Wie viel CPU -Zeit wurde verbraucht.
- Die Kontrollgruppe, zu der der Dienst gehört.
Relevante Einträge aus dem Systemprotokoll werden ebenfalls angezeigt. Dies sind typischerweise Ereignisse wie das Start des Dienstes. Diese können informativ sein, wenn Sie einen Dienst oder einen Daemon untersuchen, der nicht richtig gestartet wurde.
VERWANDT: So verwenden Sie JournalCTL, um Linux -Systemprotokolle zu lesen
Die autonomen Systeme
Services und Daemons bieten viele automatische Aktionen Ihres Betriebssystems, sodass sie von entscheidender Bedeutung sind. Das bedeutet, dass ihre Gesundheit auch von entscheidender Bedeutung ist.
Es ist einfach und informativ, einen Blick auf Ihre Dienste, Dämonen und Einheitsdateien zu erhalten. Es ist auch eine wertvolle Fehlerbehebung, wenn ein Dienst oder ein Daemon sich weigert, zu beginnen.
VERWANDT: So lösen Sie den Fehler "zu viele geöffnete Dateien" unter Linux
- › So führen Sie ein Linux -Programm bei Startup mit Systemd aus
- › Wyze ist unten, es sind nicht nur du
- › Wie man jemanden auf Tiktok blockiert oder entsperrt
- › Die besten Ohrhörer für iPhone -Fans erreichen gerade ihren niedrigsten Preis
- › Microsoft verwandelt Bing in eine KI -Suchmaschine
- › Der OnePlus 11 ist da, aber mit einem groben Start
- › Microsoft Edge erhält KI -Chat und einen neuen Look unter Windows