GNU/Linux >> Linux Esercitazione >  >> Debian

Come avviare, arrestare e riavviare i servizi su Debian

I servizi sono essenzialmente programmi in esecuzione in background al di fuori del controllo interattivo degli utenti del sistema poiché mancano di un'interfaccia. Vengono eseguiti in background per essere utilizzati ogni volta che è necessario.

Alcuni dei servizi comunemente conosciuti includono Mysql, ssh e Nginx. Su Debian, i servizi sono gestiti con Systemd, che sostituisce System V per inizializzare il sistema e i suoi componenti, inclusi i servizi che sono fondamentali per il corretto funzionamento del sistema operativo.

Alcuni dei servizi nelle versioni basate su Debian e Ubuntu che vengono eseguiti ad ogni avvio sono l'avvio, il riavvio, l'arresto e il ricaricamento. Questo tutorial li tratterà tutti in dettaglio.

Systemd vs. Init

La distribuzione basata su Linux al giorno d'oggi usa systemd invece del buon vecchio init. In systemd puoi gestire i servizi usando il comando systemctl, mentre in init puoi gestire il servizio usando i comandi service.

Noterai anche che anche se il tuo sistema Linux, in questo caso Debian, utilizza systemd, ha comunque la flessibilità di utilizzare il comando service destinato ai sistemi init. Questo perché i comandi di servizio reindirizzano a systemctl. Supponiamo che sia la compatibilità con le versioni precedenti introdotta da systemd perché gli amministratori di sistema usavano abitualmente il comando service.

Avvia, arresta e riavvia i servizi su Debian 11

Non preoccuparti di eventuali servizi di gestione poiché questo articolo tratterà sia i comandi systemctl che quelli di servizio. Senza ulteriori indugi, andiamo.

Metodo 1:utilizzo di Systemctl

Il comando systemctl è una suite di daemon systemd utilizzata per gestire i servizi e i demoni Linux rappresentati dall'ultima “d” nel nome systemd. Questa "d" è nata a causa dei demoni Unix progettati per essere compatibili con le versioni precedenti degli script di inizializzazione SysV e offrono diverse funzionalità come l'avvio parallelo dei servizi di sistema all'avvio, l'attivazione su richiesta di demoni o la logica di controllo dei servizi basata sulle dipendenze. Il suo obiettivo è unificare la configurazione e i comportamenti generali di tutte le distribuzioni basate su Linux, sostituendo i vecchi sistemi Unix SystemV e BSD init.

1. Elenco di tutti i servizi

Prima di vedere come avviare, arrestare e riavviare i servizi sulla nostra macchina Debian usando il comando systemctl, dobbiamo prima conoscere i servizi disponibili sul tuo sistema. Pertanto, utilizzeremo il comando list per elencare tutti i servizi nel nostro sistema Linux:

systemctl list-unit-files --type service -all

Come visto, il comando precedente restituisce il tipo di servizio e il suo stato. Il valore di uno stato del servizio può essere abilitato, mascherato (inattivo fino a quando la maschera non viene impostata), disabilitato, generato o statico.

Per generare solo servizi in esecuzione, puoi combinare il comando systemctl con il comando grep e dovresti essere pronto.

sudo systemctl | grep running

Il comando systemctl viene utilizzato per avviare, controllare lo stato, arrestare e riavviare i servizi seguendo le sintassi nella tabella seguente:

AZIONE COMANDO
Controlla lo stato del servizio stato systemctl (ServiceName)
Avvia un servizio inizio systemctl (ServiceName)
Interrompi un servizio sudo systemctl stop (ServiceName)
Riavvia un servizio sudo systemctl restart(ServiceName)

2. Avvia un servizio

Per avviare un servizio utilizzando il comando systemctl, utilizzare l'opzione di avvio. Questa opzione è quindi seguita dal nome del servizio che desideri avviare. Pertanto, utilizza la seguente sintassi:

systemctl start (ServiceName)

Successivamente, sostituirai (ServiceName) con il servizio effettivo che desideri avviare, come nel nostro caso, vogliamo avviare il servizio vsftpd.

sudo systemctl start vsftpd.service

Come visto sopra, il servizio è attivo e funzionante.

3. Stato di un servizio

Come visto in precedenza nella tabella precedente, la sintassi per verificare lo stato del servizio è la seguente:

systemctl status (ServiceName)

Pertanto, utilizzeremo la sintassi sostituendo (ServiceName) con valori appropriati. Per controllare lo stato del servizio vsftpd, puoi emettere il seguente comando:

sudo systemctl status vsftpd.service

Nell'istantanea qui sotto, dovresti vedere che il servizio ssh è attivo e funziona correttamente

4. Interruzione di un servizio

Ora, discutiamo di come interrompere il servizio. Per fare ciò, utilizzeremo l'opzione stop del comando systemctl seguita dal nome del servizio che si desidera interrompere. l'arresto di un servizio segue la seguente sintassi:

sudo systemctl stop (ServiceName)

Ad esempio, per interrompere il servizio vsftpd attualmente in esecuzione, esegui il comando seguente:

sudo systemctl stop vsftpd.service

Dopo aver eseguito il comando di arresto, dovresti vedere che il pulsante precedentemente attivo è passato a inattivo(morto).

5. Riavvia un servizio

Per riavviare un servizio utilizzando il comando systemctl, utilizzeremo l'opzione "riavvia". Come negli esempi precedenti, questa opzione è seguita anche dal nome del servizio che desideri riavviare, come mostrato nella seguente sintassi:

sudo systemctl restart (ServiceName)

Quindi sostituisci (ServiceName) con il servizio effettivo che desideri riavviare, nel nostro caso "vsftpd".

sudo systemctl restart vsftpd.service

Ed è così che i servizi vengono riavviati utilizzando Systemd.

Puoi visitare questo link per avere maggiori informazioni su Systemd.

Metodo 2:utilizzo del comando di servizio

Il comando service gestisce i servizi nella directory /etc/init.d, sebbene alcune distribuzioni reindirizzino il comando al comando systemctl spiegato in precedenza. Il comando service fa parte del demone init comunemente usato nelle distribuzioni precedenti di sistemi Linux per gestire i servizi.

Proprio come systemctl, il comando service può essere utilizzato anche per controllare lo stato, avviare, riavviare e arrestare i servizi seguendo la sintassi descritta nella tabella seguente:

AZIONE COMANDO
Riavvia un servizio inizio systemctl (ServiceName)
Controlla lo stato del servizio Stato del servizio sudo (ServiceName)
Avvia un servizio avvio del servizio sudo (ServiceName)

Interrompi un servizio interruzione del servizio sudo (ServiceName)

La sezione seguente mostra esempi di come applicare le sintassi nella tabella sopra

1. Avvia il servizio

Ora parliamo di come avviare un servizio. Per raggiungere questo obiettivo, utilizzeremo l'opzione di avvio del comando di servizio. Questa opzione viene dopo il nome del servizio che desideri eseguire. Ecco la sintassi:

sudo service (ServiceName) start

Ad esempio, se intendiamo avviare un servizio chiamato ssh, sostituiremo (ServiceName) con il servizio effettivo previsto per l'avvio, come nel nostro caso, "vsftpd".

sudo service vsftpd start

2. Verifica lo stato di un servizio

Utilizza la seguente sintassi per controllare lo stato di un servizio:

sudo service (ServiceName) status

Se, ad esempio, vogliamo eseguire un controllo dello stato di un servizio come vsftpd utilizzando il comando service, dovremo sostituire la sintassi (ServiceName) con il nome vsftpd come mostrato di seguito:

sudo service vsftpd status

3. Interruzione di un servizio

Ora vediamo come interrompere il servizio. Per fare ciò, utilizzeremo l'opzione di arresto preceduta dal nome del servizio che desideriamo interrompere. Ecco la sintassi:

sudo service (ServiceName) stop

Successivamente, sostituisci (ServiceName) con il servizio effettivo che desideri interrompere come, nel nostro caso, "vsftpd":

sudo service vsftpd stop

Come visto, il servizio ora legge Inactive(dead) dopo aver eseguito il comando di arresto, il che significa che funziona come previsto.

4. Riavvia un servizio

Proviamo i servizi di riavvio utilizzando il comando service che segue la seguente sintassi:

sudo service (ServiceName) restart

Sostituisci:

sudo service vsftpd restart

Come visto, i comandi di servizio funzionano correttamente come volevamo.

Inoltre, puoi utilizzare il comando seguente per ricaricare la configurazione di un servizio senza interrompere il servizio stesso.

sudo service vsftpd reload

Puoi visitare questo link per avere maggiori informazioni sul comando di servizio.

Come abilitare un servizio all'avvio

Nel caso in cui desideri abilitare l'avvio di un servizio Debian all'avvio del sistema, utilizza la seguente sintassi:

sudo systemctl enable SERVICE_NAME

Sostituisci:

sudo systemctl enable vsftpd.service

Come disabilitare il servizio all'avvio

Puoi anche interrompere l'avvio del servizio durante l'avvio del sistema utilizzando la seguente sintassi:

sudo systemctl disable SERVICE_NAME

Ad esempio:

sudo systemctl disable vsftpd.service

Conclusione

I servizi sono componenti vitali di qualsiasi dispositivo; quindi gestirli è un must per qualsiasi utente di livello Linux. Questa guida mostra che la gestione dei servizi è piuttosto semplice e può essere eseguita con metodi diversi. Ricorda che il metodo ideale e consigliato per svolgere l'attività del servizio in Linux è il comando systemctl che abbiamo spiegato in precedenza nella prima sezione di questa guida. Altri metodi come gestire la directory /etc/init.d sono obsoleti.

Questo tutorial ha spiegato le funzionalità di avvio, riavvio, arresto e controllo dello stato del servizio, ma ciò non ti impedisce di apprendere funzioni aggiuntive dalle loro pagine ufficiali. Continua a seguire FOSS Linux per ulteriori guide relative a Linux.


Debian
  1. Avvia, arresta e riavvia i servizi sul server Linux RHEL 7 systemd

  2. Come avviare, arrestare e riavviare i servizi su un server dedicato Linux

  3. Avvia, arresta o riavvia i servizi in CentOS 8 - Processo passo dopo passo?

  4. Come avviare/arrestare/riavviare i servizi in CentOS Web Panel

  5. Avvia, arresta e riavvia Crond Daemon in Linux

Come avviare, arrestare o riavviare i servizi in CentOS 8

Come avviare, arrestare e riavviare i servizi in Debian 10

Come riavviare i servizi sulla riga di comando di Ubuntu

Come avviare, arrestare o riavviare i servizi in Ubuntu

Ubuntu:avvia, arresta, riavvia i servizi

Come avviare, arrestare o riavviare i servizi di rete su Rocky Linux 8