Se devi spegnere un sistema Linux in modo pulito, i tre comandi da conoscere davvero sono systemctl poweroff, shutdown e halt. Sembrano equivalenti, ma non lo sono: cambiano il modo in cui coinvolgono systemd, il preavviso agli utenti, la possibilità di pianificare lo spegnimento e il comportamento finale della macchina.
In pratica, la scelta giusta dipende da due domande: vuoi chiudere subito oppure programmare lo stop? E vuoi solo fermare il sistema o anche togliere alimentazione alla macchina, se l’hardware lo supporta? Su server e VPS la differenza è minima in apparenza, ma in produzione conta eccome, soprattutto se ci sono sessioni attive, job schedulati, filesystem montati in rete o servizi che richiedono uno stop ordinato.
1) systemctl poweroff: lo spegnimento più diretto su systemd
Su sistemi moderni con systemd, systemctl poweroff è il comando più lineare per spegnere la macchina. Non è solo un alias “più elegante”: passa attraverso il gestore di init, quindi coordina l’arresto dei servizi, la chiusura dei mount e la disattivazione del sistema nel modo previsto dalla piattaforma.
Lo userai quando vuoi un’azione immediata e leggibile, per esempio da una shell SSH amministrativa:
systemctl poweroffIl vantaggio principale è la coerenza con il resto dell’ecosistema systemd. Se un servizio è in stato anomalo, systemd prova comunque a rispettare le dipendenze e i timeout definiti nei unit file. Non è magia: se hai servizi che ignorano SIGTERM o che impiegano troppo a chiudersi, puoi vedere un ritardo tra il comando e lo spegnimento reale.
Un controllo utile prima di usare il comando è verificare che la sessione sia davvero sulla macchina giusta. Sembra banale, ma in ambienti con nomi host simili e accesso tramite jump host è l’errore classico:
hostnamectlSe vuoi capire se il sistema è effettivamente basato su systemd, puoi controllare anche il processo PID 1:
ps -p 1 -o pid=,comm=Atteso: systemd. Se non lo è, il comando può non avere il significato che ti aspetti. In quel caso sei in un container, in un ambiente init diverso o in una distribuzione molto particolare.
2) shutdown: il comando giusto quando ti serve preavviso
shutdown è il comando più utile quando devi dare tempo agli utenti o ai processi di chiudersi. È quello che usi quando lo stop va annunciato, schedulato o eseguito con un margine. È il classico strumento da manutenzione: invia un messaggio, può essere ritardato e gestisce l’arresto in modo ordinato.
Esempio di spegnimento immediato:
shutdown -h nowQui -h indica che il sistema deve fermarsi e portarsi allo stato di halt/poweroff secondo l’hardware e la configurazione. Su molte macchine equivale allo spegnimento effettivo. Se vuoi programmare lo stop tra 10 minuti:
shutdown -h +10Se vuoi avvisare gli utenti con un messaggio esplicito:
shutdown -h +15
Commenti (0)
Nessun commento ancora.
Segnala contenuto
Elimina commento
Eliminare definitivamente questo commento?
L'azione non si può annullare.