Come elencare i servizi Linux con il comando systemctl


Se sei un utente o amministratore Linux, devi sapere come gestire i servizi sul tuo sistema. I servizi sono programmi che vengono eseguiti in background e forniscono funzionalità essenziali, come rete, stampa, registrazione e altro ancora.

Ma come elencare, avviare, arrestare, abilitare, disabilitare o riavviare i servizi su Linux? La risposta è il comando systemctl. Questo comando fa parte di systemd, un moderno gestore di sistemi e servizi per distribuzioni Linux come Ubuntu e Debian.

Se sei un Principiante di Linux e desideri gestire questi servizi utilizzando systemctel, segui i passaggi seguenti.

Elenca tutti i servizi con systemctl

Per elencare tutti i servizi sul tuo sistema Linux, esegui questo comando nel terminale:

sudo systemctl list-units –type servizio

Vi verrà mostrata una tabella con cinque colonne: UNIT, LOAD, ACTIVE, SUBe DESCRIZIONE.

La colonna UNITmostra il nome del file dell'unità di servizio, che è il file di configurazione e definizione del servizio. Questo file contiene informazioni su cosa fa il servizio e come gestirlo. Puoi anche visualizzare una breve descrizione del servizio nella colonna DESCRIZIONE.

La colonna LOADmostra se il file dell'unità di servizio è caricato in memoria. La colonna ATTIVOmostra se si tratta di un servizio in esecuzione o meno. Infine, la colonna SUBmostra lo stato secondario del servizio, ad esempio in esecuzione, terminato o non riuscito.

Puoi anche utilizzare l'opzione-ao –allinvece del servizio–typeper elencare tutti i tipi di unità, non solo i servizi .

Elenca i servizi attivi con systemctl

Se desideri vedere solo i servizi attualmente attivi (in esecuzione) sul tuo sistema, esegui questo comando nel terminale Linux:

sudo systemctl list-units –type service –state active

Questo filtrerà i servizi inattivi (interrotti) o non riusciti.

Elenca i servizi inattivi con systemctl

Allo stesso modo, se desideri vedere solo i servizi attualmente inattivi (interrotti) sul tuo sistema, esegui questo comando nel terminale:.

sudo systemctl list-units –type service –state inactive

Questo filtrerà i servizi attivi (in esecuzione) o non riusciti.

Elenca i servizi non riusciti con systemctl

Se vuoi vedere i servizi che non sono riusciti ad avviarsi o arrestarsi sul tuo sistema, apri il terminale ed esegui questo comando:

sudo systemctl list-units –type service –state fallito

Questo filtrerà tutti i servizi attualmente attivi (in esecuzione) o inattivi (interrotti).

Elenca i servizi abilitati con systemctl

Per vedere quali servizi sono abilitati per l'avvio automatico all'avvio del sistema, esegui questo comando nel terminale:

sudo systemctl list-unit-files –type service –state abilitato

Questo ti mostrerà una tabella con due colonne: UNIT FILEe STATE. La colonna FILE UNIT mostra il nome del file dell'unità di servizio. La colonna STATO mostra se il servizio è abilitato o meno.

Elenca i servizi disabilitati con systemctl

Per vedere quali servizi sono disabilitati e non si avvieranno automaticamente all'avvio del tuo sistema, apri il tuo terminale Linux ed esegui questo comando:

sudo systemctl list-unit-files –tipo servizio –stato disabilitato

Questo filtrerà i servizi abilitati o mascherati.

Mostra i dettagli di un servizio con systemctl

Per mostrare maggiori dettagli su un servizio specifico sul tuo sistema, esegui questo comando nel terminale:

sudo systemctl status

Sostituisci con il nome del file dell'unità di servizio che desideri controllare.

Questo ti mostrerà informazioni come descrizione, stato di caricamento, stato attivo, stato secondario, ID processo (PID), utilizzo della memoria, utilizzo della CPU e registri di servizio recenti.

Puoi anche utilizzare il sottocomando show invece di status per visualizzare tutte le proprietà del servizio in un formato name=value.

Avvia un servizio con systemctl

Per avviare un servizio arrestato sul tuo sistema, esegui questo comando nel tuo terminale Linux:

sudo systemctl start

Sostituisci con il nome del file dell'unità di servizio che desideri avviare.

Questo avvierà il servizio in background e ritornerà al prompt. Puoi utilizzare il sottocomando status per verificare che il servizio sia in esecuzione.

Interrompi un servizio con systemctl

Per interrompere un servizio in esecuzione sul tuo sistema, esegui questo comando nel terminale:

sudo systemctl stop

Sostituisci con il nome del file dell'unità di servizio che desideri interrompere

Ciò interromperà il servizio in background e tornerà al prompt. Puoi utilizzare il sottocomando status per verificare che il servizio sia interrotto.

Riavvia un servizio con systemctl

Vuoi modificare e ricaricare il file di configurazione di un servizio e applicare le modifiche? In tal caso, dovrai riavviare il servizio in seguito.

Per riavviare un servizio in esecuzione sul tuo sistema, apri il terminale ed esegui questo comando:

sudo systemctl riavvia

Sostituiscicon il nome del file dell'unità di servizio che desideri riavviare.

Questo interromperà e avvierà il servizio in background e tornerà al prompt. Puoi utilizzare il sottocomando status per verificare che il servizio sia in esecuzione.

Ricarica un servizio con systemctl

Alcuni servizi supportano il ricaricamento della configurazione senza interruzioni e riavvii. Ricaricare un servizio ti consente di apportare piccole modifiche ai file di configurazione di quel servizio senza riavviarli. Questo è più veloce e meno distruttivo del riavvio.

Per ricaricare un servizio che supporti questa funzionalità, utilizza il seguente comandosystemctlnel terminale:

sudo systemctl ricarica

Sostituisci con il nome del file dell'unità di servizio che desideri ricaricare.

Ciò ricaricherà il servizio in background e ritornerà al prompt. È possibile utilizzare il sottocomando status per verificare che il servizio sia in esecuzione.

Abilita un servizio con systemctl

Per abilitare l'avvio automatico di un servizio all'avvio del sistema, esegui questo comando nel terminale:

sudo systemctl abilita .

Sostituisci con il nome del file dell'unità di servizio che desideri abilitare.

Questo creerà un collegamento simbolico dal file dell'unità di servizio a una posizione in /etc/systemd/system, che dice a systemd di avviarlo al momento dell'avvio.

Puoi anche utilizzare l'opzione –nowper abilitare e avviare un servizio contemporaneamente. Ad esempio:

sudo systemctl abilita –ora

Disabilita un servizio con systemctl

Per disattivare l'avvio automatico di un servizio all'avvio del sistema, esegui questo comando nel terminale Linux:

sudo systemctl disabilita

Sostituisci con il nome del file dell'unità di servizio che desideri disabilitare.

Questo rimuoverà il collegamento simbolico da /etc/systemd/system, che dice a systemd di non avviarlo all'avvio.

Puoi anche utilizzare l'opzione –nowper disabilitare e interrompere un servizio allo stesso tempo:

sudo systemctl disattiva –ora

Elenca i servizi mascherati con systemctl

Mascherare un servizio significa collegare il suo file unit a /dev/null, il che impedisce che venga caricato o manipolato da systemd. Ciò aggiunge un ulteriore livello di protezione.

Per vedere quali servizi sono mascherati e non possono essere avviati o arrestati manualmente o automaticamente sul tuo sistema, esegui questo comando nel terminale del tuo PC Linux:

sudo systemctl list-unit-files –tipo servizio –stato mascherato

L'elenco dei servizi mascherati verrà visualizzato in un elenco (con mascheratoelencato nella colonna STATO)

Maschera un servizio con systemctl

Esegui questo comando nel terminale per impedire che un servizio venga avviato, arrestato manualmente o automaticamente sul tuo sistema:

sudo systemctl maschera

Sostituisci con il nome del file dell'unità di servizio che desideri mascherare.

Questo creerà il collegamento simbolico dal file dell'unità di servizio a /dev/nullper impedire che venga caricato o manipolato da systemd..

Smaschera un servizio con systemctl

Puoi smascherare un servizio che è stato precedentemente mascherato. Questo rimuoverà il collegamento simbolico a /dev/null e ne consentirà l'utilizzo e il caricamento altrove.

Per smascherare un servizio precedentemente mascherato sul tuo sistema, esegui questo comando:

sudo systemctl unmask

Sostituisci con il nome del file dell'unità di servizio che desideri smascherare.

Controllare il tuo PC Linux

Se il tuo PC Linux utilizza systemd per gestire i servizi di sistema, puoi utilizzare il comando systemctlper gestirli. Puoi avviare, arrestare, ricaricare, disabilitare e controllare i tuoi servizi, offrendoti un maggiore controllo sul tuo PC Linux.

Un altro modo per gestire il tuo PC è limitare l'accesso a determinati file. Puoi utilizzare il comando chmod sul tuo PC Linux per consentire (o impedire) l'accesso.

Non sei sicuro che la tua distribuzione Linux sia adatta? Dovresti invece provarne un'altra delle migliori distribuzioni Linux o addirittura provarne distribuzione Linux portatile. Utilizzando una distribuzione portatile potrai passare da una distribuzione all'altra con facilità.

.

Post correlati:


26.04.2023