Kuidas loetleda kõik jooksvad teenused Linuxi Systemd all


Linuxi süsteemid pakuvad mitmesuguseid süsteemiteenuseid (näiteks kaug sisselogimine, e-post, printerid, veebimajutus, andmesalvestus, failiedastus, domeeninime eraldusvõime (kasutades DNS-i), dünaamiline IP-aadressi määramine (kasutades DHCP-d) ja palju muud ).

Tehniliselt on teenus protsess või protsesside rühm (üldtuntud kui deemonid), mis töötab pidevalt taustal ja ootab (eriti klientide) päringute saabumist.

Linux toetab erinevaid viise teenuste käivitamiseks (käivitamine, peatamine, taaskäivitamine, automaatse käivitamise lubamine süsteemi käivitamisel jne), tavaliselt protsessi- või teenushalduri kaudu. Enamik, kui mitte kõik kaasaegsed Linuxi jaotused kasutavad nüüd sama protsessihaldurit: systemd.

Systemd on Linuxi jaoks süsteemide ja teenuste haldur; algprotsessi sissejuhatav asendaja, mis ühildub SysV ja LSB init skriptidega ning käsk systemctl on peamine tööriist systemd haldamiseks.

Selles juhendis demonstreerime, kuidas loetleda kõik töötavad teenused Linuxi süsteemis.

Jooksvate teenuste loetlemine Linuxi SystemD all

Kui käivitate käsu systemctl ilma argumentideta, kuvatakse see kõigi laaditud systemd üksuste loend (lisateavet systemd üksuste kohta leiate süsteemidokumentatsioonist), sealhulgas teenused, näidates nende olekut (olgu see aktiivne või mitte).

# systemctl 

Kõigi oma süsteemi laaditud teenuste (olgu need siis aktiivsed, töötavad, väljunud või ebaõnnestunud) loetlemiseks kasutage teenuse väärtusega alamkäsu list-unit ja lülitit --type .

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

Kõigi laaditavate, kuid aktiivsete teenuste, nii töötavate kui ka väljunud teenuste loetlemiseks võite lisada valiku --state aktiivse väärtusega järgmiselt.

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

Kuid kõigi jooksvate teenuste (st kõigi laaditud ja aktiivselt töötavate teenuste) kiire ülevaate saamiseks käivitage järgmine käsk.

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

Kui kasutate sageli eelmist käsku, saate selle hõlpsalt kutsumiseks luua oma ~/.bashrc faili varjunime käsu.

# vim ~/.bashrc

Seejärel lisage varjunimede loendi alla järgmine rida, nagu ekraanipildil näidatud.

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

Salvestage muudatused faili ja sulgege see. Ja nüüdsest alates kasutage käsku „running_services”, et vaadata kõigi oma serveri laaditud ja aktiivselt töötavate teenuste loendit.

# running_services	#use the Tab completion 

Lisaks on teenuste oluline aspekt nende kasutatav sadam. Delemoni protsessi kuulatava pordi kindlakstegemiseks võite kasutada tööriistu netstat või ss, nagu näidatud.

Kui lipp -l tähendab kõigi kuulamispesade printimist, kuvab -t kõik TCP-ühendused, -u näitab kõiki UDP-ühendusi, - n tähendab printida numbrilisi pordinumbreid (rakenduste nimede asemel) ja -p tähendab rakenduse nime näitamist.

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

Viies veerg näitab pesa: Local Address: Port. Sellisel juhul kuulab protsess zabbix_agentd porti 10050.

Samuti, kui teie serveris töötab tulemüüriteenus, mis kontrollib, kuidas blokeerida või lubada liiklus valitud teenustesse või sadamatesse või nendest, võite loetleda tulemüüris avatud teenused või pordid käsuga ufw (sõltuvalt Linuxist) kasutate jaotusi), nagu näidatud.

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

$ sudo ufw status     [UFW Firewall]

Praeguseks kõik! Selles juhendis demonstreerisime, kuidas Linuxi süsteemis systemd töötavaid teenuseid vaadata. Samuti käsitlesime, kuidas kontrollida teenuse kuulatavat porti ja kuidas vaadata süsteemi tulemüüris avatud teenuseid või porte. Kas teil on täiendusi või küsimusi? Kui jah, võtke meiega ühendust, kasutades allolevat kommentaarivormi.