web-dev-qa-db-fra.com

Comment modifier la séquence d'amorçage GRUB?

Windows 7 et Ubuntu sont installés sur une machine partagée. Étant donné que de nombreux non-développeurs utilisent Windows, j'aimerais modifier l'ordre de démarrage pour le leur faciliter la tâche.

Actuellement, la séquence d'amorçage ressemble à ceci:

  • Ubuntu 11.10 kernelgeneric * 86
  • Ubuntu 11.10 kernelgeneric * 86 (démarrage sécurisé)
  • Test de mémoire
  • Test de mémoire
  • Windows 7 sur /dev/sda6

Comment changer l'ordre par défaut pour que Windows 7 soit en haut de la liste?

  • Windows 7 sur /dev/sda6
  • Ubuntu 11.10 kernelgeneric * 86
  • Ubuntu 11.10 kernelgeneric * 86 (démarrage sécurisé)
  • Test de mémoire
  • Test de mémoire
328
chrisjlee

Vous pouvez utiliser une application graphique conviviale appelée Grub Customizer pour vous rendre la vie un peu plus facile. Comme son nom l'indique, vous pouvez faire beaucoup plus que réorganiser les entrées de menu GRUB.

Vous pouvez l'installer par:

Sudo add-apt-repository ppa:danielrichter2007/grub-customizer
Sudo apt-get update
Sudo apt-get install grub-customizer

(Voir Question Ask Ubuntu Les PPA peuvent-ils être ajoutés en toute sécurité à mon système et quels sont les "drapeaux rouges" à surveiller?.)

Il existe un article How-To Geek à ce sujet, Comment configurer Linux GRUB 2 le menu de démarrage de manière simple] . Jetez un coup d'oeil si vous êtes intéressé. En outre, il existe un thread résolu sur les forums Ubuntu, Modifier l'ordre de démarrage dans GRUB 2] qui mentionne cet outil.

Voici quelques captures d'écran:

screen_1

screen_2

screen_3


Un peu de dépannage:

Les paramètres de personnalisation de Grub peuvent uniquement fonctionner à partir de la dernière installation de Linux/Ubuntu, celle qui a installé Grub.

Par exemple, si quelqu'un a deux systèmes d'exploitation installés (Windows et Ubuntu), puis installe un troisième système d'exploitation (Manjaro, etc.) et tente ensuite de suivre la réponse ci-dessus, les modifications apportées par Grub Customizer ne fonctionneront pas à partir du deuxième système d'exploitation ( Ubuntu, dans l'exemple). Le programme doit être installé dans le troisième système d'exploitation, car il semble que Grub Customizer ne peut modifier que les fichiers Grub créés lors de l'installation du système sur lequel il est installé.

Les fichiers qui déterminent le menu de démarrage Grub sont livrés dans la plupart des cas avec le dernier système installé sur une machine. Par conséquent, Grub Customizer doit être installé et utilisé à partir de que Système Linux.

289
Nitin Venkatesh

Vous pouvez également modifier l'entrée de démarrage par défaut grub à partir de la ligne de commande sans avoir à installer aucun outil supplémentaire. Cela ne changera pas l'ordre dans la liste, mais permettra à un autre système d'exploitation de démarrer par défaut, ce qui ressemble de toute façon à ce que vous souhaitez peut-être.

Commencez par créer une copie de sauvegarde de /etc/default/grub. En cas de problème, vous pouvez facilement revenir à la copie qui convient:

Sudo cp /etc/default/grub /etc/default/grub.bak

Editez ensuite le fichier en utilisant vim ou l'éditeur de texte de votre choix:

Sudo vim /etc/default/grub

Trouvez la ligne qui contient

GRUB_DEFAULT=0

et le mettre à

GRUB_DEFAULT=x

x est l'index de l'élément de menu grub auquel vous souhaitez démarrer par défaut. Notez que les éléments de menu sont indexés à zéro. Cela signifie que le premier élément de la liste est 0 et que le sixième élément est en fait 5. Donc, pour démarrer au sixième élément de la liste, la ligne se lirait comme suit:

GRUB_DEFAULT=5

Si vous avez oublié l'ordre des éléments, consultez /boot/grub/grub.cfg. Chaque entrée de menu est spécifiée par une ligne de type:

menuentry 'Ubuntu' [options] {

Vous pouvez également choisir la valeur par défaut par le nom au lieu d’index, par exemple:

GRUB_DEFAULT='Ubuntu'

s'il y avait une ligne menuentry 'Ubuntu' sur /boot/grub/grub.cfg. Cela peut être une meilleure méthode, car elle ne dépend pas de l'ordre des entrées, ce qui pourrait changer.

Pour utiliser un noyau dans le sous-menu "Previous Linux Versions", utilisez:

GRUB_DEFAULT="Previous Linux Versions>x"

(assurez-vous d'inclure les citations), où x est l'index de l'ancien noyau dans le sous-menu, ou le nom du noyau tel qu'il apparaît dans /boot/grub/grub.cfg. Par exemple,

GRUB_DEFAULT="Previous Linux Versions>4.13.0-43-generic"

Puis construisez le menu grub mis à jour:

Sudo update-grub
236
dcharles

De la site tombunt (article de Tom ):

GRUB peut être configuré à l'aide du fichier /etc/default/grub. Avant d’apporter des modifications, il peut être judicieux de le sauvegarder en créant une copie:

Sudo cp /etc/default/grub /etc/default/grub.bak

Vous pouvez restaurer la copie de la sauvegarde sur l'original:

Sudo cp /etc/default/grub.bak /etc/default/grub

Ouvrez le fichier en utilisant l'éditeur de texte avec les privilèges root:

gksu gedit /etc/default/grub

La ligne GRUB_DEFAULT=0 signifie que GRUB sélectionnera le premier élément de menu à démarrer. Changez cela en GRUB_DEFAULT=saved. Cette modification facilitera la modification ultérieure de l'élément par défaut.

Enregistrez et fermez le fichier. Exécutez cette commande pour appliquer vos modifications à la configuration de GRUB:

Sudo update-grub

Le changement de configuration que nous avons effectué permet d’utiliser les commandes grub-set-default et grub-reboot à tout moment. Celles-ci vous permettent de modifier l'élément de démarrage par défaut de manière permanente ou uniquement pour le prochain démarrage, respectivement.

Exécutez grub-set-default ou grub-reboot (avec Sudo) avec le numéro de l’élément de menu à démarrer (le premier élément est 0). Cette commande changera la valeur par défaut au deuxième élément:

Sudo grub-set-default 1
39
silenTK