Est-il possible de redémarrer un système Linux (Debian en particulier) sans redémarrer le matériel?
J'ai un contrôleur RAID qui prend un peu de temps à s'exécuter avant que le système d'exploitation ne démarre, et j'aimerais qu'il soit possible de redémarrer rapidement le système d'exploitation Linux sans avoir à passer par tout le processus de redémarrage du contrôleur RAID, etc.
kexec()
ce qui ressemble àexec()
, mais pour les noyaux Unix.Réponses:
J'utilise kexec-reboot sur presque tous mes systèmes de production.
Cela fonctionne incroyablement bien, ce qui me permet de contourner la longue période de POST sur les serveurs HP ProLiant et de réduire le cycle de démarrage de 5 minutes à environ 45 secondes.
Voir: https://github.com/error10/kexec-reboot
Le seul inconvénient est que cela ne semble pas fonctionner sur les systèmes RHEL / CentOS 6.x démarrant UEFI. Mais la plupart des combinaisons saines système / matériel fonctionnent.
la source
kexec
. C'est l'kexec-reboot
utilitaire. La description de Github décrit la différence et ce que l'utilitaire ajoute au processus.shutdown -r
. Vos scripts système remarqueront que kexec a été mis en scène et agissent correctement. À quoi ça ressemble? Trois, quatre ou quinze minutes plus courtes. J'ai une vidéo d'une qualité très horrible. J'ai enlevé la console iDRAC, mais vous ne voulez vraiment pas en subir leskexec-reboot
conséquences ... Le script est destiné à automatiser le processus d'obtention des arguments de ligne de commande appropriés pour kexec, ce qui peut être délicat. .[ -n "$kexec_command" ] && $kexec_command -e -x >& /dev/null
. Donc, si un noyau est chargé par kexec -l, le système redémarrera sans un / sbin / reboot complet ... kexec est intégré! Je ne savais pas ça, merci. Je suppose que les distributions plus modernes l'ont également couvert. En passant, si kexec n’avait pas déjà été exécuté avec -l, le script de redémarrage dira "Rien n’a été chargé!" c'est pourquoi la sortie est envoyée à / dev / null, et pourquoi je n'ai jamais été au courant de cette installation.Oui c'est possible. kexec permettra à un noyau Linux d’être démarré directement à partir de Linux sans passer par le processus de démarrage du BIOS.
la source
Oui. Vous devez utiliser kexec-tools. Pour rendre la vie plus facile, j'utilise kexec-reboot .
la source
# The error checking is very basic.