EDIT: (pour plus de clarté) je cherche à changer l'apparence du menu de démarrage de grub, en éditant les fichiers de configuration (éventuellement mais pas nécessairement grub.cfg).
Ainsi, tout utilisateur ubuntu sait à quel point le menu de démarrage est rempli après quelques mises à niveau du noyau. À l'époque de menu.lst, vous pouviez modifier le menu pour masquer les options indésirables, mais les garder disponibles.
Par exemple, si votre menu grub ressemblait à ceci:
A
B
C
D
Vous pouvez rendre les options C et D invisibles en insérant une option vide entre B et C. De cette façon, les options C et D ne seraient pas visibles au démarrage, mais deviendraient visibles si vous les descendiez dans le menu de démarrage.
Essayer cette même astuce dans grub.cfg n'a conduit à aucun résultat. Donc, je cherche un moyen d'obtenir ce même résultat avec le nouveau menu grub, en éditant le fichier grub.cfg. D'autres ajustements esthétiques sont également les bienvenus.
Merci
EDIT2: S'il n'est pas possible de masquer les entrées de menu, j'aimerais pouvoir insérer un séparateur entre elles, de sorte que le menu ressemblerait à ceci:
A
B--Autres--
C
D
la source
Réponses:
Tout d'abord, comprenez comment Ubuntu configure Grub2.
Donc, si vous ne voulez pas modifier grub.cfg après chaque mise à jour du noyau, vous voulez modifier les scripts dans /etc/grub.d afin que vos modifications soient appliquées à chaque fois que update-grub est exécuté.
Deuxièmement, pour répondre directement à votre première question, je ne connais aucun moyen de rendre invisibles des options de démarrage spécifiques mais toujours accessibles via le menu Grub. Il y a beaucoup de petites choses à propos de Grub1 qui n'ont pas été réimplémentées dans Grub2, et cela ne m'étonnerait pas si c'était l'une d'entre elles.
Au lieu de cela, vous pouvez rendre toutes les entrées de menu invisibles (jusqu'à ce qu'elles soient mises en surbrillance) en définissant la couleur de police du menu sur la même couleur que l'arrière-plan. Dans /etc/grub.d/05_debian_theme , changez menu_color_normal pour que la première couleur (police) corresponde à la deuxième couleur (arrière-plan). Laissez menu_color_highlight différent, de sorte que l'entrée sous le curseur s'affiche.
Obtenir un séparateur dans le menu Grub.
Dans Grub1, vous insérez une nouvelle entrée comme celle-ci. Si je me souviens bien, vous aviez besoin de la déclaration racine pour en faire une entrée de menu valide, sinon Grub1 l'ignorait.
Je soupçonne que Grub2 pourrait être similaire. Une entrée de menu très basique ressemble à ceci dans grub.cfg :
Étant donné que "n'importe quoi" dans les guillemets doubles s'affiche comme titre, vous pouvez simuler un séparateur avec cela. Comme Grub1, Grub2 veut que le mot clé linux le traite comme une véritable entrée de menu, alors faites attention de ne pas le sélectionner accidentellement.
Malheureusement, «n'importe quoi» ne veut rien dire ; pendant que je testais cela, j'ai essayé une longue chaîne de tirets ("----------------") et cela n'a jamais fonctionné. Mais il aime la courte chaîne de points ci-dessus, vous pouvez donc l'utiliser.
.....
Voilà comment créer un séparateur. Pour créer un groupe et les placer où vous le souhaitez automatiquement, vous devez les ajouter dans les scripts dans /etc/grub.d .
Pour cet exemple, mettons un simple séparateur entre les différentes sections de grub.cfg . Si vous regardez /etc/grub.d , vous voyez les scripts suivants:
Nous allons créer un nouveau script, un séparateur et y placer les éléments suivants:
Maintenant, déplacez ce script en place pour le premier séparateur et liez-le en place pour les autres. Les scripts sont exécutés dans l'ordre, donc si vous voulez que le premier arrive avant 10_linux , nommez-le 09_separator ou quelque chose.
Si une entrée spécifique est définie par défaut dans / etc / default / grub , vous devrez peut-être la mettre à jour - Grub2 commence à compter les entrées de menu à 0, et chacun de ces "séparateurs" est une entrée valide, donc ils comptent aussi. Si votre entrée par défaut précédente était 0 et que vous avez ajouté un séparateur avant, n'oubliez pas de remplacer GRUB_DEFAULT par 1
Maintenant, lancez update-grub et examinez /boot/grub/grub.cfg - vous devriez voir les séparateurs là-dedans. Si vous le faites, redémarrez et vérifiez-les.
....
Si vous souhaitez placer des séparateurs ailleurs, disons entre différentes versions du noyau, vous devrez modifier 10_linux (ou un autre script) directement et trouver l'endroit approprié pour ajouter le séparateur. Vous pouvez utiliser les lignes du script ci-dessus; inclure tout sauf la première ligne #! / bin / sh .
Si vous voulez quelque chose de plus joli, utilisez des images ou des thèmes de démarrage Grub. Je dois vous donner une vérification de la pluie sur ces sujets, mais consultez les ressources ci-dessous.
Ressources:
Il y a deux grands guides Grub2 sur UbuntuForums que j'ai appris à connaître et à aimer:
GNU Grub 2 est une autre excellente ressource. Il a un ensemble de scripts pour peaufiner le Grub2 de Karmic ( divulgation complète: je ne les ai pas essayés ).
La page Format de thème de Grub Wiki est un must pour le piratage des thèmes Grub2.
la source
Le séparateur peut être composé de tirets si son premier caractère est l'espace. De plus, il n'est pas nécessaire d'utiliser la commande linux pour la section séparateur, vous pouvez utiliser n'importe quelle commande comme celle-ci:
Ou même "vrai" pour revenir en silence:
la source
Si vous n'utilisez pas les autres noyaux, vous pouvez simplement les supprimer à l'aide de l'interface du gestionnaire de paquets qui vous convient. Cela les supprime automatiquement de grub.cfg
la source