Apagar, reiniciar o tancar la sessió a LinuxComandes LinuxLinux

La comanda halt a Linux: aturar el sistema (i en què es diferencia de poweroff)



La comanda halt atura el sistema operatiu: tanca els serveis, desmunta els discos i deixa el processador parat. La diferència amb apagar és subtil però important: amb systemd, halt no talla el corrent. La màquina es queda encesa (ventiladors, llums…) amb el sistema aturat. Si el que vols és apagar-la del tot, la comanda és poweroff.

A les distribucions actuals amb systemd, halt, poweroff i reboot són enllaços a systemctl i accepten les mateixes opcions:

$ ls -l /usr/sbin/halt /usr/sbin/poweroff /usr/sbin/reboot
lrwxrwxrwx 1 root root 16 /usr/sbin/halt -> ../bin/systemctl
lrwxrwxrwx 1 root root 16 /usr/sbin/poweroff -> ../bin/systemctl
lrwxrwxrwx 1 root root 16 /usr/sbin/reboot -> ../bin/systemctl

Sintaxi

sudo halt [opcions]

Necessita privilegis de root. L’acció és immediata: no hi ha compte enrere ni es pot programar (per a això, shutdown).

Opcions més útils

OpcióQuè fa
-p, --poweroffApaga la màquina en lloc de només aturar-la
--rebootReinicia, sigui quina sigui la comanda que has fet servir
--haltAtura, sigui quina sigui la comanda que has fet servir
-f, --forceAtura immediatament sense passar per systemd (vegeu més avall)
--no-wallNo envia l’avís als usuaris connectats
-w, --wtmp-onlyNo atura res: només escriu el registre d’apagat al fitxer wtmp
-d, --no-wtmpNo escriu el registre d’apagat al fitxer wtmp
-n, --no-syncNo buida les memòries cau als discos abans d’aturar

Exemples

Aturar el sistema (la màquina queda encesa):

sudo halt

Aturar i apagar (equival a poweroff):

sudo halt -p

La forma recomanada amb systemd:

sudo systemctl halt       # atura
sudo systemctl poweroff   # apaga

halt, poweroff, shutdown: quina faig servir?

Vols…Comanda
Apagar la màquina arasudo poweroff o sudo systemctl poweroff
Reiniciar arasudo reboot o sudo systemctl reboot
Apagar d’aquí a un temps i avisar els usuarissudo shutdown +10 "missatge"
Deixar el sistema aturat però la màquina encesasudo halt o sudo systemctl halt

En molts sistemes antics (SysV init), halt i poweroff feien el mateix i apagaven la màquina. systemd és més estricte: halt només atura. Si mai has fet halt i l’ordinador no s’apagava, aquest és el motiu.

Compte amb -f

halt -f (i poweroff -f, reboot -f) no contacta amb systemd: no atura els serveis ni, en la majoria dels casos, desmunta bé els sistemes de fitxers. És gairebé com prémer el botó d’apagar. Només té sentit quan el sistema està penjat i l’apagat normal no avança; altrament pots perdre dades o haver de reparar el disc a la propera arrencada.

Errors de la versió antiga d’aquest post

  • halt -i no reinicia. Amb el halt de SysV init, -i desactivava les interfícies de xarxa abans d’aturar; amb systemd ni tan sols és una opció documentada. Per reiniciar, reboot o halt --reboot.
  • halt -f no serveix per «forçar l’apagat quan el sistema no ho permet»: se salta l’aturada ordenada dels serveis, que és just el que protegeix les dades.
  • halt no és equivalent a shutdown -h now: amb systemd, shutdown -h apaga la màquina, mentre que halt només l’atura.

Comandes relacionades

  • shutdown: apagar o reiniciar de manera programada i avisant els usuaris.
  • reboot: reiniciar.
  • init i telinit: els antics nivells d’execució (0 per apagar, 6 per reiniciar).
  • Init i systemd: el sistema d’arrencada actual.