Com llistar tots els serveis en execució sota Systemd a Linux


Els sistemes Linux ofereixen una varietat de serveis del sistema (com ara inici de sessió remot, correu electrònic, impressores, allotjament web, emmagatzematge de dades, transferència de fitxers, resolució de noms de domini (mitjançant DNS), assignació d'adreces IP dinàmiques (mitjançant DHCP) i molt més. ).

Tècnicament, un servei és un procés o grup de processos (comunament coneguts com a dimonis) que s'executen contínuament en segon pla, esperant que arribin les sol·licituds (especialment dels clients).

Linux admet diferents maneres de gestionar (iniciar, aturar, reiniciar, habilitar l'inici automàtic a l'arrencada del sistema, etc.) serveis, normalment mitjançant un gestor de processos o serveis. La majoria, si no totes, les distribucions modernes de Linux ara utilitzen el mateix gestor de processos: systemd.

Systemd és un gestor de sistemes i serveis per a Linux; un reemplaçament del procés d'inici, que és compatible amb els scripts d'inici SysV i LSB i l'ordre systemctl és l'eina principal per gestionar systemd.

En aquesta guia, demostrarem com llistar tots els serveis en execució amb systemd a Linux.

Llista de serveis en execució sota SystemD a Linux

Quan executeu l'ordre systemctl sense cap argument, mostrarà una llista de totes les unitats systemd carregades (llegiu la documentació systemd per obtenir més informació sobre les unitats systemd) inclosos els serveis, mostrant el seu estat (ja siguin actius o no).

# systemctl 

Per llistar tots els serveis carregats al vostre sistema (ja siguin actius; en execució, sortint o fallits, feu servir la subordre list-units i el commutador --type amb un valor de servei.

# systemctl list-units --type=service
OR
# systemctl --type=service

I per llistar tots els serveis carregats però actius, tant en execució com els que s'han sortit, podeu afegir l'opció --state amb el valor actiu, de la manera següent.

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

Però per obtenir un cop d'ull ràpid de tots els serveis en execució (és a dir, tots els serveis carregats i en execució activa), executeu l'ordre següent.

# systemctl list-units --type=service --state=running 
OR
# systemctl --type=service --state=running

Si utilitzeu sovint l'ordre anterior, podeu crear una ordre d'àlies al fitxer ~/.bashrc tal com es mostra, per invocar-la fàcilment.

# vim ~/.bashrc

A continuació, afegiu la línia següent a la llista d'àlies tal com es mostra a la captura de pantalla.

alias running_services='systemctl list-units  --type=service  --state=running'

Deseu els canvis al fitxer i tanqueu-lo. I a partir d'ara, utilitzeu l'ordre \running_services per veure una llista de tots els serveis carregats i en execució activa al vostre servidor.

# running_services	#use the Tab completion 

A més, un aspecte important dels serveis és el port que utilitzen. Per determinar el port on escolta un procés dimoni, podeu utilitzar les eines netstat o ss tal com es mostra.

On la marca -l significa imprimir totes les connexions d'escolta, -t mostra totes les connexions TCP, -u mostra totes les connexions UDP, - n significa imprimir números de ports numèrics (en lloc dels noms de l'aplicació) i -p significa mostrar el nom de l'aplicació.

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

La cinquena columna mostra el sòcol: Adreça local:Port. En aquest cas, el procés zabbix_agentd està escoltant al port 10050.

A més, si el vostre servidor té un servei de tallafoc en execució, que controla com bloquejar o permetre el trànsit cap a o des dels serveis o ports seleccionats, podeu llistar els serveis o els ports que s'han obert al tallafoc mitjançant l'ordre ufw (segons el Linux). distribucions que utilitzeu) tal com es mostra.

# firewall-cmd --list-services   [FirewallD]
# firewall-cmd --list-ports

$ sudo ufw status     [UFW Firewall]

Això és tot per ara! En aquesta guia, vam demostrar com veure els serveis en execució amb systemd a Linux. També vam explicar com comprovar el port que escolta un servei i com veure els serveis o els ports oberts al tallafoc del sistema. Tens alguna addició a fer o preguntes? En cas afirmatiu, poseu-vos en contacte amb nosaltres mitjançant el formulari de comentaris a continuació.