Grub2 - Documentation de la communauté Ubunt dit ce qui suit:
Vous pouvez enregistrer un système d'exploitation en exécutant Sudo grub-set-default si DEFAULT = saved est défini dans/etc/default/grub. Il peut également être enregistré si GRUB_SAVEDEFAULT = true est également défini dans/etc/default/grub. Dans ce cas, le système d'exploitation par défaut reste actif jusqu'à ce qu'un nouveau système d'exploitation soit sélectionné manuellement dans le menu GRUB 2 ou que la commande grub-set-default soit exécutée.
J'ai mis les lignes DEFAULT=saved
AND GRUB_SAVEDEFAULT=true
dans /etc/default/grub
et j'ai exécuté Sudo grub-set-default
. Voici la sortie:
$ Sudo grub-set-default
entry not specified.
Usage: grub-set-default [OPTION] entry
Set the default boot entry for GRUB.
-h, --help print this message and exit
-v, --version print the version information and exit
--boot-directory=DIR expect GRUB images under the directory DIR/grub
instead of the /boot/grub directory
ENTRY is a number or a menu item title.
Report bugs to <[email protected]>.
Est-ce que je ne suis pas la documentation correctement? Quelle est la bonne façon de faire cela?
La documentation dans ce cas est fausse. Toutes les variables de /etc/default/grub
commencent par GRUB_
, il s’agit donc de GRUB_DEFAULT=saved
, et non DEFAULT=saved
. J'ai corrigé le wiki Ubuntu pour refléter cela.
Le manuel officiel de grub décrit cela correctement: http://www.gnu.org/software/grub/manual/grub.html#Simple-configuration
Mettez ce qui suit dans /etc/default/grub
:
GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true
Puis lancez:
Sudo update-grub
Dans mon cas, cela ne fonctionnait pas pour les entrées définies via /etc/grub.d/40_custom
qui manquaient de la ligne savedefault
.
menuentry "Chameleon" {
savedefault ### <<<< this must be added
set root="(hd1)"
chainloader +1
}
Vous oubliez le numéro (c.-à-d. Que "ENTRÉE est un numéro ou un titre d'élément de menu" dans votre texte).
Sudo grub-set-default 1
pour que l'option 1 soit la valeur par défaut.
Toujours exécutez Sudo update-grub
après avoir modifié le fichier /etc/default/grub
pour appliquer les modifications.
savedefault ne fonctionnera pas s'il n'y a pas d'en-tête approprié dans le fichier grub.cfg généré automatiquement
Pour générer l’en-tête approprié, vous devez le définir dans/etc/default/grub.
GRUB_DEFAULT=saved
et faites grub-mkconfig pour remplacer votre copie de grub.cfg
grub-mkconfig -o /boot/grub.cfg
savedefault de Grub 2.02 ne nécessite aucun argument supplémentaire
Vous pouvez voir la source de savedefault dans grub.cfg