Questo tutorial spiega varie opzioni della riga di comando disponibili per i comandi di arresto e riavvio di Linux.
Opzioni del comando di spegnimento di Linux
Sintassi:
spegnimento [OPZIONE]... ORA [MESSAGGIO]
Dalla sintassi vediamo che oltre a OPTIONS e TIME, c'è un MESSAGGIO che può essere prodotto sulla riga di comando tramite questo comando. Tieni presente che devi disporre dei privilegi di root per eseguire questo comando.
1. Un esempio di base
Nella sua forma molto semplice, il comando di spegnimento può essere usato come :
$ sudo shutdown 5 [sudo] password for admin: Broadcast message from admin@dev-db (/dev/pts/2) at 19:44 ... The system is going down for maintenance in 5 minutes!
Quindi vediamo che il comando di spegnimento ha avviato il processo di spegnimento del sistema.
2. Avvia il processo di riavvio tramite l'opzione -r
L'opzione -r può essere utilizzata per avviare il riavvio del sistema tramite il comando di spegnimento.
Ecco un esempio :
$ sudo shutdown -r 5 Broadcast message from admin@dev-db (/dev/pts/2) at 19:49 ... The system is going down for reboot in 5 minutes!
Quindi vediamo che il riavvio del sistema è stato avviato.
3. Spegni o arresta il sistema usando l'opzione -h
Questa opzione consente al sistema di decidere se spegnere o arrestare il sistema una volta spento.
Ecco un esempio :
$ sudo shutdown -h 5 Broadcast message from admin@dev-db (/dev/pts/2) at 19:51 ... The system is going down for halt in 5 minutes!
Quindi vediamo che il sistema ha deciso di interrompersi quando l'opzione -h è stata passata al comando di spegnimento sulla mia macchina.
4. Insistere affinché il sistema si spenga usando l'opzione -P
L'opzione -P consente all'utente di insistere affinché il sistema si spenga una volta spento.
Ecco un esempio :
$ sudo shutdown -P 5 Broadcast message from admin@dev-db (/dev/pts/2) at 19:53 ... The system is going down for power off in 5 minutes!
Quindi vediamo quel sistema pronto per lo spegnimento.
5. Stampa un messaggio usando il comando di spegnimento
L'utente può anche stampare un messaggio personalizzato tramite il comando di spegnimento. Questo potrebbe essere utile quando l'utente o l'amministratore desidera comunicare a tutti gli utenti attualmente collegati il motivo dell'arresto.
Ecco un esempio :
$ sudo shutdown 5 "System is shutting down to install new updates" Broadcast message from admin@dev-db (/dev/pts/2) at 19:56 ... The system is going down for maintenance in 5 minutes! System is shutting down to install new updates
Quindi vediamo che il messaggio è stato visualizzato come l'ultima riga nell'output sopra.
6. Insistere affinché il sistema venga arrestato utilizzando l'opzione -H
Il comando di spegnimento fornisce un'opzione -H attraverso la quale l'utente/amministratore può insistere affinché il sistema venga arrestato una volta arrestato.
Ecco un esempio :
$ sudo shutdown -H 5 Broadcast message from admin@dev-db (/dev/pts/2) at 19:58 ... The system is going down for halt in 5 minutes!
7. Annulla l'operazione di spegnimento usando l'opzione -c
Se per qualsiasi motivo è necessario annullare l'arresto entro il tempo indicato nel comando di spegnimento, è possibile utilizzare l'opzione -c per annullare lo spegnimento.
Ecco un esempio :
$ sudo shutdown -c
L'esecuzione del comando precedente in una finestra della shell separata influisce su un arresto in corso nel modo seguente:
$ sudo shutdown 5 Broadcast message from admin@dev-db (/dev/pts/2) at 19:59 ... The system is going down for maintenance in 5 minutes! shutdown: Shutdown cancelled
Quindi vediamo che l'arresto è stato annullato.
8. Invia avvisi e disabilita gli accessi usando l'opzione -k
L'opzione -k fornita dal comando shutdown in realtà non arresta o spegne il sistema, ma invia semplicemente gli avvisi e disabilita gli accessi.
Ecco un esempio :
$ sudo shutdown -k 5 Broadcast message from admin@dev-db (/dev/pts/2) at 20:04 ... The system is going down for maintenance in 5 minutes!
Quindi vediamo che viene prodotto solo un avviso ma dopo 5 minuti non si è verificato alcun arresto.
Opzioni del comando di riavvio di Linux
Il comando reboot consente all'amministratore di sistema di riavviare un sistema. Questo comando è una specie di comando front-end per lo spegnimento, tranne quando viene eseguito con l'opzione –force o quando il runlevel è 0 o 6. In questi due casi, questo comando richiama la chiamata di sistema reboot() per eseguire l'operazione desiderata.
Sintassi per il comando di riavvio:
reboot [OPTION]...
Quindi vediamo che, a differenza del comando di spegnimento discusso sopra, il comando di riavvio non accetta né argomenti temporali né argomenti di messaggio. Riavvia semplicemente il sistema nel momento in cui viene eseguito.
1. Riavvia il sistema
Questo può essere fatto semplicemente eseguendo il comando di riavvio con i privilegi di root.
Ecco l'esempio :
$ reboot
2. Avvia il riavvio forzato usando l'opzione -f
Questa opzione richiama la chiamata di sistema reboot() che porta a un riavvio non corretto del sistema.
Ecco un esempio :
$ reboot -f
3. I file /var/run/wtmp e /var/run/utmp
Mentre si ha a che fare con il comando di riavvio, è necessario avere la conoscenza di questi file:
/var/run/utmp :da dove verrà letto il runlevel corrente; questo file verrà anche aggiornato con il record del runlevel sostituito da un record del tempo di spegnimento.
/var/log/wtmp :a questo file verrà aggiunto un nuovo record runlevel per il tempo di spegnimento.
Un aggiornamento fittizio a /var/log/wtmp può essere eseguito usando l'opzione -w.
$ sudo reboot -w [sudo] password for admin:
4. Controlla lo stato di aggiornamento di /var/log/wtmp
Poiché /var/log/wtmp non è un file leggibile, quindi è possibile verificarne lo stato di aggiornamento utilizzando il comando cksum. Questo comando dovrebbe mostrare un checksum aggiornato quando viene eseguito reboot -w.
Ecco un esempio. Dal seguente output, possiamo vedere che il checksum per il file è cambiato, dopo aver eseguito il riavvio -w.
$ cksum /var/log/wtmp 5957036 402048 /var/log/wtmp $ sudo reboot -w $ cksum /var/log/wtmp 978698526 402432 /var/log/wtmp