J'utilise des serveurs sur le Rackspace Cloud - celui de la première génération, et non celui de la prochaine génération Open Stack . Je crois que cela fonctionne Xen pour l'hyperviseur.
J'utilise les images de stock de Rackspace. J'utilise principalement les serveurs 10.04, mais j'ai également déployé de nouveaux serveurs avec 12.04.
Mon problème est que je veux garder le noyau à jour. Je peux apt-get dist-upgrade pour les nouveaux noyaux, et l'installation fonctionne bien. Cependant, lorsque je redémarre, le serveur ne revient pas.
Mon hypothèse est qu'il existe un hackery personnalisé autour de la configuration de grub qui fait que les noyaux stockés fonctionnent, mais les noyaux mis à niveau échouent.
Quelqu'un at-il eu un problème similaire sur le Rackspace Cloud? Quelle est la plus petite modification dont j'ai besoin pour que grub démarre un nouveau noyau?
Vous devez modifier /etc/default/grub
et le modifier pour exclure les UUID du périphérique racine. c'est à dire.
Ouvrez un terminal en appuyant sur Ctrl+Alt+T et entrez:
gksu gedit /etc/default/grub
Trouvez et décommentez la ligne suivante. C'est supprimer le #
du début de la ligne # GRUB_DISABLE_LINUX_UUID=true
comme ceci:
# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
GRUB_DISABLE_LINUX_UUID=true
Sauvegardez et quittez gedit.
Vous devez ensuite exécuter update-grub
pour affecter ces modifications en procédant comme suit:
Sudo update-grub
Le périphérique racine utilisé sur rack dans quelque chose comme/dev/xvda1, qui n’est pas un UUID mais qui est traité comme tel par grub. Par conséquent, au démarrage suivant, grub recherche un périphérique avec cet UUID et ne le trouve pas, suspendant le processus de démarrage.