Introduzione

Quando il kernel viene aggiornato, a meno che tu non stia usando Ksplice o KernelCare devi riavviare il tuo sistema Linux. Un riavvio del sistema può anche essere richiesto in altre circostanze, ad esempio durante la risoluzione dei problemi hardware, l'installazione di applicazioni e così via. Se stai eseguendo un server Linux headless, devi sapere come riavviare il sistema dalla riga di comando.

Nella maggior parte delle moderne distribuzioni Linux, l'utility systemctl sostituisce la maggior parte dei comandi di gestione dell'alimentazione utilizzati nelle precedenti distribuzioni Linux con sysvinit. I comandi reboot e shutdown sono alias di systemctl e sono disponibili nel sistema per motivi di compatibilità.

In questo tutorial, spiegheremo come utilizzare i comandi systemctl e shutdown per riavviare il server Linux. I comandi devono essere eseguiti come root o come utente con privilegi sudo .

Utilizzare Systemctl

Per riavviare il sistema Linux è sufficiente digitare reboot o systemctl reboot:

sudo systemctl reboot

Il sistema verrà riavviato immediatamente.

Quando il riavvio è iniziato, tutti gli utenti e i processi che hanno effettuato l'accesso vengono informati che il sistema non funziona e non sono consentiti ulteriori accessi. Linux chiuderà tutti i file aperti, interromperà i processi in esecuzione e riavvierà il sistema.

Per impedire al comando reboot di inviare un messaggio, esegui il comando con l'opzione --no-wall:

sudo systemctl --no-wall reboot

Se si desidera impostare un messaggio personalizzato che spiega il motivo del riavvio, utilizzare l'opzione --message=:

sudo systemctl --message="Hardware upgrade" reboot

Il messaggio verrà mostrato nei registri:

System is rebooting (Hardware upgrade)

Utilizzare Shutdown

Se utilizzato con l'opzione -r, il comando shutdown esegue un riavvio del sistema:

sudo shutdown -r

Per impostazione predefinita, il sistema verrà riavviato dopo 1 minuto, ma è possibile specificare l'ora esatta in cui si desidera riavviare il sistema.

L'argomento time può avere due diversi formati. Può essere un tempo assoluto nel formato hh:mm e un tempo relativo nel formato +m in  cui m è il numero di minuti da adesso.

L'esempio seguente pianificherà il riavvio del sistema alle 10:

sudo shutdown -r 10:00

L'esempio seguente pianificherà il riavvio del sistema tra 5 minuti:

sudo shutdown -r +5

Per spegnere immediatamente il sistema utilizzare +0 o il suo alias now:

sudo shutdown -r now

Per trasmettere un messaggio personalizzato insieme alla notifica di spegnimento standard, digitare il messaggio dopo l'argomento time.

Il seguente comando, spegnerà il sistema tra 10 minuti e avviserà gli utenti che verrà eseguito un aggiornamento hardware:

sudo shutdown -r +10 "Hardware upgrade"

È importante ricordare che quando si specifica un messaggio wall personalizzato, è necessario specificare anche un argomento time.

Se hai pianificato il riavvio e desideri annullarlo, esegui il comando shutdown con l' opzione -c:

sudo shutdown -c

Puoi anche trasmettere un messaggio che descrive perché il riavvio è stato annullato:

sudo shutdown -c "Canceling the reboot"

Conclusione

Per riavviare un sistema Linux scrivere reboot nel terminale. Il riavvio del sistema operativo richiederà alcuni secondi.