Quando si utilizza una distribuzione Linux, alcuni processi e servizi vengono eseguiti a fianco. Alcuni possono essere in esecuzione in background anche senza la conoscenza degli utenti. Avere servizi non necessari in esecuzione può consumare gran parte delle risorse di sistema o anche rappresentare un problema di sicurezza se le misure non vengono prese in considerazione.
Pertanto, è necessario conoscere tutti i servizi in esecuzione sul proprio sistema., In questo articolo, esaminiamo tutti i possibili modi che è possibile utilizzare per elencare i servizi in esecuzione sulla vostra macchina Linux.
Come controllare i servizi in esecuzione in Linux
Cerchiamo prima di ottenere una buona comprensione dei servizi Linux. Se un servizio ha uno script di inizializzazione, viene fornito con tre stati:
- start
- stop
- restart
Tutti che vengono eseguiti con il comando – service., Ad esempio, per riavviare il servizio network-manager, eseguire il seguente comando:
sudo service network-manager restart
Il comando di servizio fa riferimento a ciascun servizio utilizzando lo script init memorizzato in /etc/init.d per Ubuntu e qualsiasi altra distro basata su Debian, e etc / rc.d / init.d per distribuzioni Linux basate su RedHat. Alcuni nomi di servizio variano da una distribuzione all’altra. Ad esempio, il servizio Apache webserver è httpd su CentOS e Apache2 su Ubuntu.,
System V(SysV) | Upstart/Systemd
Molte distribuzioni Linux rientrano nei seguenti sistemi init:
- System V, che era il sistema init iniziale.
- Upstart
- systemd, che è l’ultimo sistema di init al momento della scrittura di questo articolo.
System V (SysV)
System V o comunemente noto come SysV è un vecchio sistema init utilizzato da vecchie distribuzioni Linux e risale all’Unix originale. SysV gestisce il processo di avvio utilizzando lo script di shell presente in / etc / init*. Nel caso tu stia usando / etc / init.,d / sshd start per avviare o arrestare un servizio; quindi si sta utilizzando su un sistema System V.
Upstart Init System
È un sistema init basato su eventi che è servito come sostituto del demone/sbin / init. Upstart init system è stato utilizzato per gestire l’avvio e l’arresto dei servizi durante l’avvio, l’arresto e la supervisione mentre il sistema è in esecuzione. Upstart è stato inizialmente sviluppato per Ubuntu Linux distro per sostituire il vecchio System V utilizzato in altre distribuzioni precedenti.
Systemd
E ‘ il nuovo sistema di init che la maggior parte delle distribuzioni Linux si stanno muovendo per., È stato sviluppato per accelerare il processo di avvio, gestire le dipendenze e molto altro. Nel caso in cui si stia utilizzando systemctl restart sshd start per avviare o arrestare un servizio, si sta utilizzando su un sistema Systemd.
Controlla tutti i servizi in esecuzione in un sistema System V(SysV) init
Diamo un’occhiata ad alcuni dei comandi da terminale che puoi usare per elencare tutti i servizi in esecuzione in un sistema SysV init.,
service --status-all
Il comando elenca tutti i servizi in esecuzione nel sistema. Nel caso in cui i servizi in esecuzione siano molti, è possibile utilizzare parametri aggiuntivi – più e meno per elencare i servizi in una vista organizzata e chiara.,99d8fa6″>
service --status-all | more
Per elencare solo i servizi attualmente in esecuzione sul sistema, eseguire il comando riportato di seguito:
service --status-all | grep running
Per visualizzare lo stato di un particolare servizio, eseguire il comando riportato di seguito:
service --status-all | grep e.gservice --status-all | grep httpd
in Alternativa, è possibile eseguire il comando riportato di seguito per visualizzare lo stato di un particolare servizio.,em
Per un elenco di tutti i servizi in esecuzione su un sistema Linux Upstartinit sistema, eseguire il comando riportato di seguito:
initctl list
Controllare tutti i servizi in esecuzione in un Systemd sistema di init
Per un elenco di tutti i servizi in esecuzione su un sistema Linux Systemd sistema di init, eseguire il comando riportato di seguito:
systemctl
Dal comando di cui sopra, possiamo vedere che i dati vengono visualizzati in cinque colonne, vale a dire, UNITÀ di CARICO, ATTIVO, SUB, e la DESCRIZIONE., Diamo un’occhiata a ciò che ogni colonna sta per:
- UNIT – Mostra il nome dell’unità Systemd corrispondente.
- LOAD – Questa colonna visualizza se l’unità corrente è caricata in memoria o meno.
- ATTIVO-Questa colonna indica se l’unità è in uso (attiva) o meno.
- SUB – Descrive lo stato di esecuzione di una particolare unità.
- DESCRIZIONE-Fornisce una descrizione dettagliata di una particolare unità.,
È possibile anche l’elenco dei servizi in esecuzione sulla base del tipo utilizzando il comando riportato di seguito:
systemctl list-units --type service
È anche possibile elencare i servizi basati sul loro stato attuale. È relativamente simile all’output del comando precedente ma un po ‘ più semplice.,
systemctl list-unit-files --type service
To list the status of a particular service, execute the command below:
systemctl status e.gsystemctl status acpid.path