Come elencare i servizi su Linux

In qualità di amministratore di sistema, probabilmente hai a che fare con molti servizi ogni giorno.

Su Linux , i servizi vengono utilizzati per molti scopi diversi.

Possono essere usati per avviare un server SSH sulla tua macchina o possono eseguire alcune operazioni in un’ora o in un giorno specifico.

Sia che tu stia usando una distribuzione basata su Debian o uno RedHat, interrogare i servizi è molto simile.

Tuttavia, data la distribuzione che stai utilizzando, e più specificamente il sistema di inizializzazione (init o systemd), potresti dover usare comandi diversi.

In questo tutorial imparerai come puoi, dato il tuo gestore di sistema, elencare tutti i servizi sulla tua macchina Linux.

Sommario

Determina il gestore di sistema utilizzato

Come probabilmente saprai, le distribuzioni recenti utilizzano il gestore di sistema Systemd.

Tuttavia, non è sempre stato così: in passato, la maggior parte delle distribuzioni utilizzava il gestore di sistema SysVinit.

Di conseguenza, ci sono davvero due modi per gestire i tuoi servizi su un sistema Linux.

Prima di imparare i comandi per elencare i servizi, devi conoscere il gestore di sistema che stai attualmente utilizzando.

Per determinare il tuo attuale gestore di sistema, il modo più semplice è usare il ” pstree ”e per controllare il primo processo mai eseguito sul tuo sistema.

Se vedi “systemd”, significa ovviamente che stai utilizzando systemd. Tuttavia, se vedi ” init “, significa che stai usando SysVinit.

Su Ubuntu 14.04, che usa ancora il vecchio sistema init, il tuo” pstree “potrebbe assomigliare a questo.

Elenca servizi utilizzando systemctl

Il modo più semplice per elencare i servizi su Linux, quando sei su un sistema systemd, è usare il comando “systemctl” seguito da “list-units”. Puoi specificare l’opzione “–type = service” per limitare i risultati ai soli servizi.

Per impostazione predefinita, questo comando ti mostrerà solo i servizi attivi o quelli che hanno avuto esito negativo sul tuo sistema. Nella schermata sopra, la maggior parte dei servizi sono attivi ma quello logrotate (evidenziato in rosso) è contrassegnato come non riuscito.

Fantastico, hai imparato come elencare facilmente i tuoi servizi su un server Linux.

Tuttavia, come forse avrai notato, non avevi accesso a tutti i servizi: che dire dei servizi inattivi? E dei servizi che non sono stati caricati da systemd all’avvio?

Elenca tutti i servizi su Linux usando list-units

Per elencare tutti i servizi, cioè attivi e inattivi, devi usare il comando “systemctl list-units” seguito dall’opzione “–all”.

Allo stesso modo, puoi limitare i risultati ai servizi solo utilizzando il filtro del tipo.

Come puoi vedere, sono elencati anche i servizi inattivi che potrebbero essere convenienti se hai appena scritto il tuo servizio e lo hai curato nell’elenco.

In questo caso, sono elencati solo i servizi caricati. All’avvio, systemd carica i file unit e può scegliere di non caricare un servizio specifico se scopre che non sarà utilizzato dal sistema.

Di conseguenza, c’è una reale differenza tra “caricato “E servizi” installati “. I servizi “installati” indicano che i file delle unità possono essere trovati nei percorsi corrispondenti.

Elenca servizi per stato

In alcuni casi, potresti essere interessato solo a servizi che hanno avuto esito negativo. Per questo, puoi specificare lo stato che stai cercando come opzione del comando systemctl.

Dove “state” può essere uno dei seguenti valori: active, inactive, activating, disattivazione, non riuscita, non trovata o morta.

Ad esempio, se siamo interessati solo ai servizi “non riusciti”, eseguiremo il seguente comando

Elenca tutti i file di servizio utilizzando list-unit-files

Infine, se sei interessato ai file di servizio “caricati”, “installati”, “disabilitati” e “abilitati”, c’è un altro comando potrebbe essere molto utile.

Per elencare tutti i file di servizio disponibili, devi usare il comando “systemctl” seguito da “list-unit-files”. Facoltativamente, è possibile specificare il tipo utilizzando l’opzione “–type = service”.

In alternativa, puoi utilizzare il comando “grep” per cercare percorsi specifici sul tuo sistema che potrebbero contenere file di servizio.

Congratulazioni, hai imparato come puoi elenca i servizi se il tuo sistema usa systemd!

Elenca i servizi usando il servizio

Il modo più semplice per elencare i servizi su Linux, quando sei su un sistema di inizializzazione SystemV, è usare il ” service “seguito dall’opzione” –status-all “. In questo modo, ti verrà presentato un elenco completo dei servizi sul tuo sistema.

Come puoi vedere, ogni servizio è elencati preceduti da simboli tra parentesi. Questi simboli significano:

  • +: significa che il servizio e è in esecuzione;
  • -: significa che il servizio non è affatto in esecuzione;
  • ? : significa che Ubuntu non è stato in grado di capire se il servizio è in esecuzione o meno.

Allora perché alcuni servizi sono in grado di dire se sono in esecuzione o meno e altri non sono in grado di farlo?

Tutto si riduce all’implementazione dello script di inizializzazione. In alcuni script, come ad esempio lo script udev, puoi vedere che il comando “status” è implementato.

Questo non è il caso dello script” dns-clean “, ad esempio, che è il motivo per cui hai una domanda contrassegnare quando si interroga questo servizio.

Elenca servizi SysVinit nelle cartelle

Un altro modo per elencare l’elenco corrente di servizi è utilizzare il comando “ls” sulle cartelle contenenti tutti gli script su un sistema Linux, ovvero “/etc/init.d”.

Conclusione

In questo tutorial hai imparato come elencare facilmente i servizi su un sistema Linux sia che tu stia usando systemd o SysVinit.

Se sei interessato a creare i tuoi servizi, ti consigliamo di dare un’occhiata alle seguenti risorse. Potrebbero essere davvero utili per ottenere ciò correttamente.

  • Scrivere uno script di avvio per i sistemi init;
  • Avvio dei servizi all’avvio utilizzando systemd;

Se sei interessato all’amministrazione del sistema Linux, abbiamo una sezione completa su questo argomento sul sito web, quindi assicurati di controllarlo.

Icone realizzate da Freepik da FlatIcon

Write a Comment

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *