Qual è il comando di spegnimento di macOS?

Il comando shutdown è un'utilità integrata di macOS che spegne, riavvia o mette il computer in sospensione dal Terminale. Accetta flag che controllano l'azione, un argomento di tempo che pianifica quando deve essere eseguito, e un messaggio di broadcast opzionale visualizzato agli utenti connessi prima dell'inizio dell'operazione.

Poiché shutdown modifica lo stato del sistema, normalmente richiede privilegi di amministratore e viene invocato con sudo. È comunemente utilizzato dagli amministratori per pianificare finestre di manutenzione, dagli utenti esperti per automatizzare routine di fine giornata, e da script che necessitano di un modo affidabile per arrestare o riavviare un Mac senza software aggiuntivo.

Descrizione dello strumento

Questo strumento genera un comando shutdown di macOS valido da un modulo semplice. Seleziona un'azione, scegli quando deve essere eseguita, aggiungi facoltativamente un messaggio di broadcast e flag avanzati, e copia il comando generato in un terminale o script shell.

Esempi

Arresto immediato (spegnimento):

sudo shutdown -h now

Riavvio tra 5 minuti con un messaggio agli utenti:

sudo shutdown -r +5 "Rebooting for maintenance"

Sospensione a una data e ora specifica (30 aprile 2026 alle 23:00):

sudo shutdown -s 2604302300

Avviso agli utenti senza arresto (solo broadcast):

sudo shutdown -k +10 "Please save your work"

Annulla uno spegnimento precedentemente pianificato:

sudo killall shutdown

Funzionalità

  • Genera comandi per le azioni di arresto, riavvio, sospensione, solo avviso e annullamento
  • Pianifica l'azione immediatamente, dopo N minuti, o a una data e ora assoluta
  • Aggiungi un messaggio di broadcast mostrato agli utenti connessi
  • Attiva/disattiva sudo, -n (nessun fsck/sync) e -o (non inviare SIGTERM ai processi)
  • Anteprima in tempo reale del comando generato, pronto per essere copiato in un terminale o script

Casi d'uso

  • Pianifica un riavvio notturno dopo l'installazione di aggiornamenti di sistema su una workstation
  • Attiva uno spegnimento pulito da un job launchd o script di manutenzione a un'ora fissa
  • Avvisa gli utenti connessi che un Mac condiviso verrà spento prima di arrestarlo

Opzioni spiegate

  • Azione — Seleziona l'operazione: arresto (-h), riavvio (-r), sospensione (-s), solo avviso (-k), o annulla uno spegnimento in sospeso (killall shutdown).
  • Modalità di tempoNow usa il letterale now, In minutes usa +N, At date and time produce la forma assoluta yymmddhhmm prevista da shutdown(8).
  • Messaggio — Aggiunge un messaggio di broadcast tra virgolette; le virgolette incorporate vengono sfuggite e le nuove righe vengono rimosse.
  • Usa sudo — Antepone il comando con sudo in modo che venga eseguito con i privilegi di amministratore richiesti.
  • No fsck / no sync (-n) — Salta la sincronizzazione del filesystem prima dell'arresto. Più veloce, ma generalmente non consigliato su sistemi sani.
  • No SIGTERM (-o) — Dice a shutdown di non inviare SIGTERM ai processi prima di portare il sistema offline. Usare con cautela.

Come funziona

Dietro le quinte, shutdown(8) pianifica una transizione di sistema. L'argomento di tempo può essere:

  • now — esegui immediatamente
  • +N — esegui tra N minuti da ora
  • yymmddhhmm — esegui alla data/ora assoluta codificata come anno, mese, giorno, ora e minuto a 2 cifre

macOS non fornisce un flag di annullamento nativo -c come Linux. Per annullare uno spegnimento in sospeso, termina il processo shutdown pianificato stesso con sudo killall shutdown, che questo strumento genera per te quando l'azione Cancel è selezionata.

Suggerimenti

  • Testa sempre il comando su una macchina non critica per primo; l'arresto o il riavvio chiuderanno tutte le applicazioni in esecuzione.
  • Usa l'azione Warn per notificare gli utenti senza spegnere effettivamente — utile per test preliminari.
  • Quando pianifichi a un'ora assoluta, verifica che la data sia nel futuro; gli orari passati vengono rifiutati da shutdown.
  • Esegui da un Terminale interattivo in modo che sudo possa chiedere la tua password, o configura sudo senza password per shutdown se invocato da script automatizzati.