So listen Sie alle laufenden Dienste unter Systemd unter Linux auf

So listen Sie alle laufenden Dienste unter Systemd unter Linux auf

Ein Linux -System bietet eine Vielzahl von Systemdiensten (z. B. das Prozessmanagement, Anmeldung, Syslog, Cron usw.) und Netzwerkdienste (z. B. Remote-Login, E-Mail, Drucker, Webhosting, Datenspeicherung, Dateiübertragung, Domänenname-Auflösung (mit DNS), dynamische IP-Adresszuweisung (mit DHCP) und vielem mehr).

Technisch gesehen ist ein Dienst ein Prozess oder eine Gruppe von Prozessen (allgemein bekannt als Daemons) kontinuierlich im Hintergrund laufen und auf Anfragen warten (insbesondere von Kunden).

Linux unterstützt verschiedene Möglichkeiten zum Verwalten (starten, stoppen, neu starten, automatisch mit dem Systemstart usw. aktivieren, usw.) Dienste, in der Regel über einen Prozess- oder Service -Manager. Die meisten, wenn nicht alle modernen Linux -Verteilungen verwenden jetzt denselben Prozessmanager: systemd.

Lesen Sie auch: Die Geschichte hinter 'init' und 'systemd': Warum 'init' durch 'systemd' unter Linux ersetzt werden musste

Systemd ist ein System- und Service -Manager für Linux; ein Drop-In-Ersatz für die drin Prozess, der kompatibel ist mit Sysv Und LSB Init -Skripte und der Befehl systemctl sind das primäre Tool zum Verwalten systemd.

In diesem Leitfaden werden wir demonstrieren, wie alle laufenden Dienste unter aufgeführt sind systemd unter Linux.

Listing ausgeführte Dienste unter Systemd unter Linux

Wenn Sie die ausführen SystemCTL -Befehl Ohne Argumente werden eine Liste aller geladenen Systemeinheiten angezeigt (lesen Sie die Systemd -Dokumentation für weitere Informationen zu Systemd -Einheiten), einschließlich Diensten, und zeigen deren Status (ob aktiv oder nicht).

# SystemCTL 

Um alle geladenen Dienste in Ihrem System aufzulisten (ob aktiv; ausgeführt, beendet oder fehlgeschlagen, verwenden Sie die Listeneinheiten Unterbefehl und --Typ Wechseln Sie mit einem Dienstwert des Dienstes.

# SystemCTL List-Units --Type = Service oder # SystemCTL --Type = Service 
Listen Sie alle Dienste unter Systemd auf

Und um alle geladenen, aber aktiven Dienste aufzulisten, die sowohl ausgeführt werden als auch diejenigen, die beendet sind, können Sie die hinzufügen --Zustand Option mit einem Wert von aktiv, folgendermaßen.

# SystemCTL List-Units --Type = Service --state = Active oder # SystemCTL --Type = Service --State = Active 
Listen Sie alle aktiven laufenden Dienste in Systemd auf

Aber um einen kurzen Blick auf alle laufenden Dienste zu werfen (ich.E alle geladenen und aktiv laufenden Dienste) führen Sie den folgenden Befehl aus.

# SystemCTL List-Units --Type = Service --state = Running oder # SystemCTL --Type = Service-State = Laufen 
Listen Sie laufende Dienste in Systemd auf

Wenn Sie den vorherigen Befehl häufig verwenden, können Sie einen Alias ​​-Befehl in Ihrem erstellen ~/.bashrc Datei wie gezeigt, um sie leicht aufzurufen.

# vim ~/.bashrc 

Fügen Sie dann die folgende Zeile unter der Liste der Aliase hinzu, wie im Screenshot gezeigt.

alias running_services = "SystemCTL List-Units --Type = Service-State = Running" 
Erstellen Sie einen Alias ​​für Long -Befehl

Speichern Sie die Änderungen in der Datei und schließen Sie sie. Und von nun an verwenden Sie die “running_servicesBefehl, um eine Liste aller geladenen und aktiv ausgeführten Dienste auf Ihrem Server anzuzeigen.

# Running_Services # Verwenden Sie die Registerkarte Fertigstellung 
Alle laufenden Dienste anzeigen

Außerdem ist ein wichtiger Aspekt der Dienste der Port, den sie verwenden. Um den Port zu bestimmen, den ein Daemon -Prozess hört, können Sie den Netstat oder verwenden ss Werkzeuge wie gezeigt.

Wo die Flagge -l bedeutet, alle Hörstecke zu drucken, -T Zeigt alle TCP -Verbindungen an, -u Zeigt alle UDP -Verbindungen an, -N bedeutet numerische Portnummern (anstelle von Anwendungsnamen) und -P bedeutet, den Anwendungsnamen anzeigen.

# netstat -ltup | grep zabbix_agentd oder # ss -ltup | grep zabbix_agentd 

Die fünfte Spalte zeigt die Socket: Lokale Adresse: Port. In diesem Fall der Prozess Zabbix_agentd Hört den Port an 10050.

Prozessanschluss bestimmen

Wenn Ihr Server über einen Firewall -Dienst läuft und der die Möglichkeit steuert, wie Sie den Datenverkehr zu oder von ausgewählten Diensten oder Ports blockieren oder zulassen, können Sie Dienste oder Ports auflisten, die in der Firewall geöffnet wurden, mit dem mit dem Firewall-CMD oder UFW -Befehl (abhängig von den von Ihnen verwendeten Linux -Verteilungen) wie gezeigt.

# Firewall-CMD-List-Services [Firewall] # Firewall-CMD-List-Ports $ sudo UFW Status [UFW Firewall] 
Listen Sie offene Dienste und Ports auf Firewall auf

Das ist alles fürs Erste! In diesem Leitfaden haben wir gezeigt, wie man laufende Dienste untersucht systemd unter Linux. Wir haben auch überprüft, wie Sie den Port überprüfen, wie ein Dienst zuhört und wie Sie Dienste oder Ports anzeigen, die in der Systemfeuerwall geöffnet sind. Haben Sie Ergänzungen zu machen oder Fragen zu machen?? Wenn ja, erreichen Sie uns mit dem Kommentarformular unten mit dem Kommentarformular.