Nous avons dans notre organisation environ 500 machines RedHat Linux.
Sur toutes les machines, nous avons installé des applications et des services sous /etc/init.d
et les serveurs Oracle RAC. Nous avons l'intention d'effectuer des mises à jour yum sur toutes les machines et ensuite de redémarrer.
Je me demandais donc quelle commande était la plus sûre:
reboot
ou
shutdown -r now
Pour les systèmes Red Hat, il n'y a pas de différence fonctionnelle entre reboot
et shutdown -r now
.
Faites ce qui est plus facile pour vous.
L'arrêt est préférable car il vous permet de spécifier raison pour l'action drastique - quelque chose que vous devriez toujours faire. Le message sera enregistré dans le (s) journal (s) pour la postérité. Par exemple:
shutdown -r now 'Kernel upgrade requires reboot'
Vous pouvez également effectuer un redémarrage planifié - en spécifiant autre chose que now
comme heure de redémarrage:
shutdown -r 22:00 'Work around kernel memory leak'
Ensuite, vos utilisateurs recevront des rappels périodiques pour sortir, etc. - le processus sera plus ordonné et professionnel.
Si vous regardez, dans RHEL 7, les deux /sbin/shutdown
et /sbin/reboot
ne sont en fait que des liens symboliques vers la commande systemctl
de systemd. Alors, utilisez ce que vous voulez. Aucune différence fonctionnelle comme l'a dit ewwhite, pas même dans les versions antérieures de RHEL qui n'utilisaient pas encore systemd.
L'utilisation de reboot
est plus sûre.
En utilisant reboot
votre intention est claire et il n'y a aucun moyen de la taper pour autre chose comme shutdown -t now
ce qui pourrait entraîner quelques maux de tête si vous utilisez sur un serveur distant avec un contrôle limité.
Pour RHEL moderne, il est recommandé d'utiliser la commande systemctl comme résumé ici : [récent] les distributions RHEL doivent utiliser la nouvelle commande systemctl pour émettre un arrêt/redémarrage. Comme indiqué dans les pages de manuel de redémarrage et d'arrêt, il s'agit "d'une commande héritée disponible uniquement à des fins de compatibilité".
Cependant, si vous utilisez de nombreuses distributions différentes, ou des distributions de différents millésimes, alors peut-être s'en tenir à shutdown -r now 'reason for shutdown'
.
La principale raison d'utiliser reboot
serait d'éviter le risque d'oublier d'ajouter le -r lors de l'utilisation de shutdown -r
sur une machine distante, ce qui pourrait facilement empêcher de se reconnecter et devoir utiliser l'administrateur distant (si disponible) pour redémarrer la machine.
Les systèmes plus anciens faisaient définitivement la distinction entre shutdown
et reboot
. Ce dernier ne fermerait pas les services ou ne synchroniserait pas nécessairement les tampons de disque. Dans des environnements hétérogènes - ou pour éviter des précédents qui pourraient être dangereux à l'avenir en rencontrant d'autres implémentations * ix - il est utile de prendre l'habitude shutdown
.