Grub et gestion du prochain démarrage

lundi 5 mai 2008

Depuis que Debian me fait des misères, il me faut redémarrer sous Ubuntu pour jouir de la télévision (heureusement, ce supplice est rare, mais bon, la C1 étant repartie je ne désespère pas de voir bientôt les multiples défaites lyonnaises, par exemple hein ;-)

Attendre patiemment l’invite de Grub c’est loin d’être palpitant, tout comme devoir le laisser paramétré à 5s, c’est un temps fou de perdu à chaque démarrage !

Bref, ceci peut très bien être appliqué à un redémarrage sous n’importe quel OS, par exemple sous Windows pour les plus fous d’entre nous ;-)

Passons aux choses sérieuses et modifions le fichier /boot/grub/menu.lst (avec les droits root, gedit /boot/grub/menu.lst par exemple) plus particulièrement le passage
default 0
que nous transformons en
default saved
comme expliqué juste au dessus :
# You can specify 'saved' instead of a number. In this case, the default entry
# is the entry saved with the command 'savedefault'.

Maintenant, il nous faut donc modifier le fameux savedefault, c’est bien, vous êtes bilingue et vous suivez !

Nous nous rendons donc dans la section concernant le système « alternatif », chez moi Ubuntu, elle ressemble à ça :
title Ubuntu, kernel 2.6.20-15-generic
root (hd0,0)
kernel /boot/vmlinuz-2.6.20-15-generic [...]
initrd /boot/initrd.img-2.6.20-15-generic
quiet

Et nous rajoutons la ligne
savedefault 0

Le 0 correspond au (n-1)ième title dans le menu grub, ce qui veut dire que le décompte commence à 0 et que l’éventuelle ligne « Other OS… » est comptée. Pour le premier système d’exploitation, il faut donc indiquer 0.

Bien, maintenant que le menu grub est paramétré, découvrons la commande magique : grub-set-default

Celle-ci fonctionne de la même manière que précédemment, pour que le prochain démarrage se fasse sur le système d’exploitation correspondant au 3e title il faut donc indiquer
grub-set-default 2

Et voilà :-)

Vous avez compris le principe ? Vous savez donc désormais comment jongler avec vos systèmes d’exploitation, sans oublier en cas de jonglage multisystème le fameux savedefault x où il se doit.

Bonus track : le script de tonton Bionic pour redémarrer, attention, ça décoiffe !

#!/bin/bash

if zenity --question --title "Redémarrer sous Ubuntu ?" --text 'Redémarrer sous Ubuntu ?' ;
then
grub-set-default 2
reboot
else
exit
fi

Le tout appelé en gksu par une icône sur le tableau de bord, l’est fort quand même ce Bionic…

Have fun !