Cum se listează toate serviciile care rulează sub Systemd în Linux

Un sistem Linux oferă o varietate de servicii de sistem (cum ar fi gestionarea proceselor, conectare, syslog, cron etc.) și servicii de rețea (cum ar fi conectare la distanță, e-mail, imprimante, găzduire web, stocare date, transfer de fișiere, rezoluție nume de domeniu (folosind DNS), alocare dinamică a adresei IP (folosind DHCP) și multe altele).

Tehnic, o serviciul este un proces sau un grup de procese (denumite în mod obișnuit sub numele de demoni) care rulează continuu în fundal și așteaptă să vină cererile (în special de la clienți).

Linux acceptă diferite moduri de gestionare (pornire, oprire, reporniți, activați pornirea automată la pornirea sistemului etc.), de obicei prin intermediul unui proces sau al unui manager de servicii. Majoritatea, dacă nu toate distribuțiile Linux moderne folosesc acum același manager de proces: systemd.

Citește și: Povestea din spatele „init” și „systemd”: De ce „init” trebuia înlocuit cu „systemd” în Linux

Systemd este un manager de sistem și servicii pentru Linux; un înlocuitor pentru procesul de inițiere, care este compatibil cu scripturile de inițiere SysV și LSB, iar comanda systemctl este instrumentul principal pentru gestionarea sistemului.

În acest ghid, vom arăta cum să listăm toate serviciile care rulează sub systemd în Linux.

Listarea serviciilor care rulează sub SystemD în Linux

Când rulați comanda systemctl fără niciun argument, va afișa o listă a tuturor unităților systemd încărcate (citiți documentația systemd pentru mai multe informații despre unitățile systemd), inclusiv serviciile, arătând starea acestora (indiferent dacă este activă sau nu).

# systemctl 

Pentru a lista toate serviciile încărcate pe sistemul dvs. (indiferent dacă sunt active; rulează, a ieșit sau a eșuat, utilizați subcomanda list-units și --type comutați cu o valoare a serviciului.

# systemctl list-units --type=serviceOR# systemctl --type=service
Listează toate serviciile sub Systemd

Și pentru a enumera toate serviciile încărcate, dar active, atât cele care rulează, cât și cele care au ieșit, puteți adăuga opțiunea --state cu o valoare de active, după cum urmează.

# systemctl list-units --type=service --state=activeOR# systemctl --type=service --state=active
Listă Toate serviciile active care rulează în Systemd

Dar pentru a obține o privire rapidă asupra tuturor serviciilor care rulează (adică toate serviciile încărcate și care rulează activ), rulați următoarea comandă.

# systemctl list-units --type=service --state=running OR# systemctl --type=service --state=running
Listează serviciile care rulează în Systemd

Dacă utilizați frecvent comanda anterioară, puteți crea o comandă alias în fișierul dvs. ~ / .bashrc așa cum se arată, pentru a o invoca cu ușurință.

# vim ~/.bashrc

Apoi adăugați următoarea linie sub lista de aliasuri, așa cum se arată în captura de ecran.

alias running_services="systemctl list-units --type=service --state=running"
Creați un alias pentru comandă lungă

Salvați modificările din fișier și închideți-l. Și de acum înainte, utilizați comanda „running_services” pentru a vizualiza o listă a tuturor serviciilor încărcate, care rulează activ pe serverul dvs.

# running_services#use the Tab completion 
Vizualizați toate serviciile care rulează

În plus, un aspect important al serviciilor este portul pe care îl folosesc. Pentru a determina portul pe care îl ascultă un proces demon, puteți utiliza instrumentele netstat sau ss așa cum se arată.

În cazul în care semnalizatorul -l înseamnă tipăriți toate soclurile de ascultare, -t afișează toate conexiunile TCP, -u afișează toate conexiunile UDP, -n înseamnă tipărirea numerelor numerice ale portului (în loc de numele aplicațiilor) și -p înseamnă afișarea numelui aplicației.

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

a cincea coloană arată socketul: Adresă locală: Port. În acest caz, procesul zabbix_agentd ascultă pe portul 10050.

Determinați portul de proces

De asemenea, dacă serverul dvs. are un serviciu de firewall, care controlează cum să blocați sau să permiteți traficul către sau de la servicii sau porturi selectate, puteți lista serviciile sau porturile care au fost deschise în firewall, utilizând comanda firewall-cmd sau ufw (în funcție de distribuțiile Linux pe care le utilizați), așa cum se arată.

# firewall-cmd --list-services # firewall-cmd --list-ports$ sudo ufw status 
Listă servicii deschise și porturi pe firewall

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *