/ / Come riavviare o spegnere Linux usando la riga di comando

Come riavviare o spegnere Linux usando la riga di comando

Terminale su un desktop Linux

Vuoi ricominciare? Questo tutorial ti mostrerà come riavviare o spegnere in modo pulito e sicuro il tuo computer Linux o macOS dalla riga di comando.

Stiamo andando giù

A volte devi solo andare per il riavvio olo spegnimento totale. Se stai lavorando su un server senza GUI o sei su una sessione SSH su un computer remoto, la riga di comando è l'unica opzione. I sistemi Linux e Unix come macOS forniscono diversi comandi per arrestare o riavviare il sistema direttamente dalla riga di comando.

I comandi che puoi usare sono:

  • spegnimento
  • riavvio
  • arresto
  • spegni

Guardando attraverso le pagine man per questi comandipuò essere fonte di confusione. A seconda delle opzioni della riga di comando scelte, tutti questi comandi possono eseguire arresti, riavvii e arresti del sistema. In effetti, le pagine man per reboot, halt, e poweroff contiene esattamente le stesse informazioni.

pagina man per il comando halt

Cosa c'è dietro questo?

La risposta sta nel sistema bootdrap systemd che ha sostituito il venerabile System V init sistema. Nel mondo Linux, Fedora ha iniziato a usare systemd nel 2011. Da allora è stato adottato da moltissime distribuzioni. Debian e Ubuntu sono stati scambiati con systemd nel 2015.

Sopra systemddistribuzioni basate su shutdown, reboot, halt, e poweroff i comandi sono effettivamente scorciatoie che puntano al systemctl comando. Il mantenimento di questi comandi offre un certo grado di compatibilità con System V initdistribuzioni basate su. Significa che gli script di shell (e gli amministratori di sistema System V hard-core) non si chinano se vengono spostati su un computer con un systemd distribuzione in esecuzione su di esso.

Usando l'arresto

Arresto o riavvio di un sistema multiutentesignifica che devi pianificare in anticipo. È necessario decidere quando andare per l'arresto o il riavvio e avvertire gli altri utenti del sistema che l'arresto sta arrivando e quando. Se è il tuo computer e sei l'unico che lo usa, la vita è molto più semplice.

Per eseguire uno di questi comandi devi essere nel sudo gruppo. Cioè, è necessario disporre delle autorizzazioni di superutente ed essere in grado di utilizzare il sudo comando. Se il comando che hai emesso avrà effetto immediato e non influirà sugli altri utenti che hanno effettuato l'accesso, non dovrai utilizzare sudo. Se si tenta di utilizzare uno di questi comandi e il comando viene rifiutato, riprovare con sudo .

Di default il shutdown Il comando assicura che tutti i processi vengano arrestatichiaramente, tutti i filesystem sono sincronizzati e tutte le attività della CPU sono cessate. Questo è lo stato di "arresto". Invia quindi un messaggio all'hardware per interrompere l'alimentazione. Questo, ovviamente, è lo stato di spegnimento o "spegnimento".

È comune passare shutdown alcuni parametri, come una stringa temporale e un messaggio che verrà inviato agli utenti che hanno effettuato l'accesso per avvisarli della chiusura. Pianifichiamo un arresto per 15 minuti da adesso. genere shutdown , Uno spazio, +15, uno spazio e quindi il messaggio da inviare agli utenti.

shutdown +15 Shutting down in 15 minutes!

comando shutdown +15 messaggio

La stringa temporale che abbiamo usato era +15 , che rappresenta tra 15 minuti. Il + è facoltativo. Avremmo potuto scrivere 15.

Riceviamo una risposta che conferma che è pianificato un arresto e quando si verificherà. Gli utenti che hanno effettuato l'accesso riceveranno il messaggio che abbiamo fornito.

notifica di spegnimento

Per annullare un arresto, utilizzare il -c (annulla) opzione.

shutdown -c

Arresto -c annulla comando

Anche se non ricevi alcuna notifica che il tuo arresto è stato annullato, gli utenti che hanno effettuato l'accesso ricevono una notifica.

Avviso di cancellazione

Se non fornisci una stringa temporale, verrà pianificato un arresto un minuto da adesso. Tieni presente che non puoi fornire un messaggio agli utenti che hanno effettuato l'accesso se non specifichi una stringa temporale.

shutdown

comando di spegnimento nessun parametro

Se non puoi nemmeno aspettare un minuto, puoi usare now come la stringa di tempo e l'arresto richiede immediato effetto. utilizzando now è come usare +0.

spegnimento ora

La stringa di tempo può essere un tempo impostato, ad esempio 23:00. Deve seguire il formato di HH:MM e deve essere nell'orologio di 24 ore. Cinque minuti prima che il sistema si spenga, vengono impediti nuovi accessi.

spegnimento 23:00 con messaggio

Conosciamo l'azione predefinita di shutdown fa passare il computer allo stato di arresto e quindi allo stato di spegnimento. È possibile ignorare questo comportamento passando ad altre opzioni della riga di comando.

  • Il -H L'opzione (halt) porterà il computer in stato di stop ma non chiederà all'hardware di spegnersi.
  • Il -P (spegnimento) è l'azione predefinita. Il computer viene portato allo stato di arresto e viene quindi spento.
  • Il -r L'opzione (riavvio) porta il computer allo stato di arresto e quindi lo riavvia.
  • Il -h (halt and poweroff) è uguale a -P. Se usi -h e -H insieme, il -H l'opzione ha la priorità.
  • Il -c L'opzione (annulla) annulla qualsiasi arresto, arresto o riavvio programmato.

Ecco un esempio in cui abbiamo programmato un riavvio.

shutdown -r 08:20 System rebooting at 08:20

spegnimento pianificazione di un riavvio

Comandi di riavvio, arresto e spegnimento

Questi comandi eseguono l'azione con il loro nomesuggerisce. Tuttavia, ciascuno di essi accetterà le opzioni della riga di comando per consentire a ciascuno di essi di eseguire un riavvio, un arresto o uno spegnimento. Ma perché confondere le cose? Questi comandi sono utilizzati al meglio al valore nominale.

Se si desidera riavviare ora, utilizzare reboot . Se si desidera spegnere ora, utilizzare poweroffe se si desidera arrestare il sistema ora, utilizzare halt.

reboot

comando di riavvio in una finestra del terminale

halt

comando di arresto in una finestra terminale

poweroff

comando di spegnimento in una finestra del terminale

Questi comandi hanno effetto immediato. Se uno di questi comandi viene rifiutato, precederlo con sudo. Ma tieni presente che un rifiuto di solito è dovuto al fatto che ci sono altri utenti connessi al sistema che stai per mettere offline.

Quale comando è giusto per me?

In ambienti multiutente che utilizzano shutdown eseguire queste azioni ti dà un maggiore controllo. La possibilità di pianificare arresti e riavvii e di avvisare gli utenti con un messaggio broadcast sarà preziosa in questi casi. Per un computer a utente singolo, reboot e poweroff probabilmente soddisferà le tue esigenze.