Quelle est la différence entre halt
et shutdown
commandes ?
Réponse acceptée :
Généralement, on utilise le shutdown
commande. Il permet un délai et un message d'avertissement avant l'arrêt ou le redémarrage, ce qui est important pour l'administration système des serveurs shell multi-utilisateurs ; il peut informer les utilisateurs à l'avance du temps d'arrêt.
En tant que telle, la commande shutdown doit être utilisée comme ceci pour arrêter/éteindre l'ordinateur immédiatement (sur Linux et FreeBSD au moins) :
shutdown -h now
Ou pour le redémarrer avec un avertissement personnalisé de 30 minutes :
shutdown -r +30 "Planned software upgrades"
Après le délai, shutdown
indique init
pour passer au niveau d'exécution 0 (arrêt) ou 6 (redémarrage). (Notez que l'omission de -h
ou -r
fera passer le système en mode mono-utilisateur (niveau d'exécution 1), qui tue la plupart des processus système mais n'arrête pas réellement le système ; il permet toujours à l'administrateur de rester connecté en tant que root.)
Une fois que les processus système ont été tués et que les systèmes de fichiers ont été démontés, le système s'arrête/s'éteint ou redémarre automatiquement. Cela se fait en utilisant le halt
ou reboot
commande, qui synchronise les modifications sur les disques, puis effectue l'arrêt/la mise hors tension ou le redémarrage.
Sous Linux, si halt
ou reboot
est exécuté lorsque le système n'a pas encore démarré le processus d'arrêt, il appellera le shutdown
commande automatiquement plutôt que d'exécuter directement l'action prévue. Cependant, sur des systèmes tels que FreeBSD, ces commandes enregistrent d'abord l'action dans wtmp
puis immédiatement effectuer l'arrêt/redémarrage eux-mêmes, sans d'abord tuer les processus ou démonter les systèmes de fichiers.