Kako navesti sve pokrenute usluge pod Systemd u Linuxu


Linux sistemi pružaju razne sistemske usluge (kao što je upravljanje procesima, prijava, syslog, cron, itd.) i mrežne usluge (kao što su daljinska prijava, e-pošta, štampači, web hosting, skladištenje podataka , prijenos datoteka, razlučivanje imena domene (koristeći DNS), dinamičko dodjeljivanje IP adrese (pomoću DHCP) i još mnogo toga).

Tehnički, usluga je proces ili grupa procesa (obično poznatih kao demoni) koji kontinuirano rade u pozadini, čekajući da stignu zahtjevi (posebno od klijenata).

Linux podržava različite načine upravljanja (pokretanje, zaustavljanje, ponovno pokretanje, omogućavanje automatskog pokretanja pri pokretanju sistema, itd.) uslugama, obično putem menadžera procesa ili usluga. Većina, ako ne i sve moderne Linux distribucije sada koriste isti upravitelj procesa: systemd.

Šta je Systemd?

Systemd je sistemski i servisni menadžer za Linux; zamjena za init proces, koji je kompatibilan sa SysV i LSB init skriptama, a naredba systemctl je primarni alat za upravljajte systemd.

Zašto navesti Running Services u Linuxu?

Poznavanje pokrenutih usluga na vašem Linux sistemu je od vitalnog značaja iz nekoliko razloga. Omogućava vam da nadgledate iskorišćenost resursa, rešavate probleme i efikasno upravljate performansama sistema. Systemd pojednostavljuje ovaj zadatak nudeći moćne komande za prikupljanje informacija o aktivnim uslugama.

U ovom vodiču ćemo demonstrirati proces navođenja svih pokrenutih usluga pod Systemd u Linuxu, pružajući sveobuhvatan vodič za korisnike svih nivoa iskustva.

Izlistavanje Pokrenutih usluga pod SystemD u Linuxu

Kada pokrenete systemctl naredbu bez ikakvih argumenata, prikazat će se lista svih učitanih systemd jedinica (pročitajte systemd dokumentaciju za više informacija o systemd jedinicama) uključujući usluge, prikazujući njihov status (bez obzira da li je aktivan ili ne ).

systemctl 

Navedite sve jedinice u systemctl

Za popis svih učitanih usluga na vašem sistemu (bilo da su aktivne; pokrenute, izašle ili neuspjele, koristite podnaredbu list-units i --type prekidač sa vrijednošću usluge.

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

A da navedete sve učitane, ali aktivne usluge, kako pokrenute tako i one koje su izašle, možete dodati opciju --state sa vrijednošću active, kako slijedi.

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

Lista Running Services u systemctl

Ali da biste dobili brzi pogled na sve pokrenute usluge (tj. sve učitane i aktivno pokrenute usluge), pokrenite sljedeću naredbu.

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

Istražimo ključne pojmove vezane za Systemd jedinice i njihov status:

  • Jedinica – Jedinica može biti usluga, utičnica, uređaj ili razni drugi entiteti.
  • Učitaj – Pokazuje da li je jedinica učitana ili ne. Jedinica se može učitati, ali ne mora biti aktivna.
  • Aktivno – Pokazuje da li jedinica aktivno radi ili je naišla na probleme i da li je u neuspješnom ili neaktivnom stanju.
  • SUB – Pruža dodatne detalje o specifičnom stanju jedinice. Za usluge, može ukazivati da li je usluga pokrenuta (pokrenuta), zaustavljena (izašla) ili nailazi na probleme (nije uspjela).
  • Opis – Pomaže korisnicima da identifikuju i razumiju svrhu jedinice bez upuštanja u detaljne konfiguracijske datoteke.

Kreirajte pseudonim za systemctl

Ako često koristite prethodnu naredbu, možete kreirati alias komandu u vašoj datoteci ~/.bashrc kao što je prikazano, da biste je lako pozvali.

vim ~/.bashrc

Zatim dodajte sljedeći red ispod liste alijasa kao što je prikazano na snimku ekrana.

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

Sačuvajte promjene u datoteci i zatvorite je. Od sada pa nadalje, koristite naredbu “running_services” da vidite listu svih učitanih, aktivno pokrenutih usluga na vašem serveru.

running_services	#use the Tab completion 

Pronađite port na kojem proces sluša

Osim toga, važan aspekt usluga je luka koju koriste. Da biste odredili port koji demonski proces sluša, možete koristiti naredbu netstat ili ss kao što je prikazano.

Gdje zastavica -l znači štampanje svih utičnica za slušanje, -t prikazuje sve TCP veze, -u prikazuje sve UDP veze, - n znači ispisati numeričke brojeve portova (umjesto imena aplikacija) i -p znači prikazati naziv aplikacije.

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

Peta kolona prikazuje utičnicu: Lokalna adresa: Port. U ovom slučaju, proces zabbix_agentd sluša port 10050.

Izlistavanje Pokretanje usluga zaštitnog zida

Također, ako vaš server ima pokrenutu uslugu zaštitnog zida, koja kontrolira kako blokirati ili dozvoliti promet prema ili sa odabranih usluga ili portova, možete navesti usluge ili portove koji su otvoreni u firewall-u, koristeći firewall-cmd< ili ufw naredba (ovisno o Linux distribucijama koje koristite) kao što je prikazano.

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

sudo ufw status     [UFW Firewall]

To je sve za sada! U ovom vodiču demonstrirali smo kako pregledati pokrenute usluge pod systemd u Linuxu. Također smo pokrili kako provjeriti da li usluga porta sluša i kako pregledati usluge ili portove otvorene u zaštitnom zidu sistema.

Imate li kakvih dodataka ili pitanja? Ako jeste, kontaktirajte nas pomoću obrasca za komentare ispod.