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.
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 systemd
distribuzioni 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 init
distribuzioni 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!
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.
Per annullare un arresto, utilizzare il -c
(annulla) opzione.
shutdown -c
Anche se non ricevi alcuna notifica che il tuo arresto è stato annullato, gli utenti che hanno effettuato l'accesso ricevono una notifica.
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
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
.
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.
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
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 poweroff
e se si desidera arrestare il sistema ora, utilizzare halt
.
reboot
halt
poweroff
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.