J'utilise Ubuntu 12.04.
Je ne peux pas pour la vie de moi faire disparaître le menu grub (avec options).
Je voudrais qu'il démarre automatiquement dans la première option. J'ai édité / etc / default / grub pour qu'il ressemble à ceci:
GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
Après cela, j'ai exécuté sudo update-grub . Ensuite, j'ai réalisé que j'avais grub 2, j'ai donc exécuté sudo update-grub2 (les deux donnent l'impression de créer le fichier grub.cfg avec succès.
Je redémarre mon ordinateur et il revient au menu grub et reste assis jusqu'à ce que je fasse un choix. Ce n'est pas souhaitable en cas de coupure de courant ... :-)
J'ai également essayé de réinstaller grub en utilisant sudo grub-install / dev / sda - également sans succès
sudo update-grub
etsudo update-grub2
exécute la même commande. Alors, ne vous inquiétez pas pour cette partie.cat /boot/grub/grub.cfg
via pastebin et partager le lien ici. C'est pour voir le réelgrub.cfg
généré.Réponses:
Comme d'autres réponses le soulignent, vous pouvez être victime de la situation d' échec d'enregistrement . L'édition
/boot/grub/grub.cfg
manuelle devrait être hors de question car elle est générée automatiquement. Une autre suggestion vue est de modifier le,/etc/grub.d/00_header
mais cela pourrait inciter l'utilisateur à intervenir sur les mises à jour.La solution la plus simple consiste à définir la variable non documentée
GRUB_RECORDFAIL_TIMEOUT
dans/etc/default/grub
. Par exemple:Éditer
Voir cette réponse pour plus de détails.
la source
update-grub
pour générer le/boot/grub/grub.cfg
fichier mis à jourrecordfail
! Vous souhaitez un délai plus long en cas d'échec du démarrage. Pour effacer manuellement, tout ce que vous avez besoin est la réponse de @ sniffski:grub-editenv create
. Cependant, il pourrait y avoir une autre raison derecordfail
se préparer ...Utilisation:
Cela effacera le fichier d'environnement grub et devrait démarrer clairement la prochaine fois.
la source
grub-editenv - unset recordfail
fonctionne aussi bien et n'affecte pas les autres envs qui pourraient être définischanger le
GRUB_TIMEOUT=10
à zéroVoici mon fichier de configuration:
Commencez par écrire le nom du système d'exploitation sur lequel vous souhaitez démarrer directement. Le mien est Ubuntu. Vous allez donc l'écrire comme dans le
GRUB_DEFAULT="Ubuntu, with Linux x.x.x-xx-generic-pae"
puis j'ai utilisé 1 seconde dans le
GRUB_TIMEOUT=
pour me donner 1 seconde avant de sélectionner l'OS par défaut (si j'ai besoin de démarrer sur un autre OS par exemple Xubuntu)comme
GRUB_CMDLINE_LINUX_DEFAULT=""
si vous supprimez,quite splash
il vous montrera des textes au lieu du logo Ubuntu pendant le processus de démarrage (j'aime ça: P)Il existe une autre solution:
Il existe un programme appelé boot-repair qui aide à la configuration avec une interface graphique.
comme vous pouvez le voir sur l'image. il y a une boîte appelée
Unhide boot menu
. Décochez la case et appuyez sur appy. Vous pouvez y accéder en cliquant sur la flèche des options avancées.installer la réparation de démarrage
puis exécutez
boot-reapir
à partir du terminal ou du tableau de bord.3ème solution:
Vous pouvez utiliser une application graphique facile à utiliser appelée grub-customizer pour vous faciliter la vie. Comme son nom l'indique, vous pouvez faire bien plus que simplement réorganiser les entrées du menu Grub avec.
Vous pouvez l'installer en:
comme vous pouvez le voir dans le menu, il y a une
show menu
option. Décochez et voyez si cela fonctionnela source
grub-update
après avoir modifié les valeurs?GRUB_HIDDEN_TIMEOUT
et lesGRUB_HIDDEN_TIMEOUT_QUIET
options sont déconseillées. Alors commentez-les.Pour ignorer le menu et l'afficher lorsque vous le maintenez enfoncé
ESC
, ajoutez:Échantillon
/etc/default/grub
'GRUB_TIMEOUT_STYLE' : Si cette option est définie sur 'compte à rebours' ou 'caché', alors, avant d' afficher le menu, GRUB attendra que le délai défini par 'GRUB_TIMEOUT' expire. Si ESC est pressé pendant ce temps, il affichera le menu et attendra l'entrée.
la source
Je pourrais résoudre ce problème en ajoutant la ligne suivante à
/etc/default/grub
... puis en cours d'exécution
sudo update-grub
.Explication: Le fichier
/boot/grub/grub.cfg
est généré en exécutantupdate-grub
à l'aide des fichiers dans/etc/grub.d
et/etc/default/grub
. Par conséquent, vous ne devez pas modifiergrub.cfg
, mais il peut être utile de savoir pourquoi le délai est défini. Recherchez les lignes commençant parset timeout=
puis recherchez la ligne suivante commençant par### END /etc/grub.d/ ...
. Cela pourrait vous donner des indications sur le script qui définit le délai d'expiration. Dans mon cas, le script os-prober était responsable du délai d'expiration. Il s'avère qu'il y a un délai d'attente codé en dur de 10 secondes/etc/grup.d/30_os-prober
qui n'est pas défini parGRUB_TIMEOUT
. Vous pouvez désactiver os-prober parGRUB_DISABLE_OS_PROBER=true
ou modifier/etc/grup.d/30_os-prober
ou utiliserGRUB_OS_PROBER_SKIP_LIST
pour ignorer certaines de vos partitions de disque dur (30_os-prober est utilisé lorsqu'un autre système d'exploitation est trouvé quelque part). Voir ce Q & A pour plus de détails. Comme d'autres l'ont souligné, une autre raison pourrait être l' échec du record , dans ce cas-ciGRUB_RECORDFAIL_TIMEOUT=$GRUB_TIMEOUT
.la source
J'ai eu le problème que le menu grub apparaissait toujours après avoir utilisé AUFS (unionfs) pour mettre le système de fichiers racine en lecture seule. J'ai dû physiquement appuyer sur la touche Entrée du serveur après chaque démarrage. J'ai suivi les instructions ici: désactiver le menu grub 2 . Depuis, je n'ai eu aucun problème.
Modifiez le fichier /boot/grub/grub.cfg et changez:
À
la source
set timeout=-1
n'est pas le même queset timeout=1
. Le premier est "attendre pour toujours" et le second est "attendre une seconde".Mon Ubuntu avait toujours un délai d'expiration de 30 secondes, que j'aurais défini une valeur ou non. Voici comment j'ai découvert que recordfail était la valeur manquante .
1. Vérifiez le script grub réel
/boot/grub/grub.cfg
À mon humble avis, la meilleure façon de vérifier ce que fera Grub est d'ouvrir
/boot/grub/grub.cfg
. Il s'agit du script généré automatiquement à l'grub-mkconfig
aide de modèles/etc/grub.d
et de paramètres de/etc/default/grub
.Autour de la ligne 109, vous verrez voir quelque chose comme:
Dans mon cas, à l'aide de ce script généré, j'ai pu découvrir que la
recordfail
variable n'était pas définie.2. Si la
recordfail
variable n'est pas définie, définissez-laOuvrez
/etc/default/grub
dans votre éditeur de texte préféré (par exemple vim), puis définissez la variableGRUB_RECORDFAIL_TIMEOUT
sur une valeur donnée, par exemple 5 secondes.Votre fichier de configuration devrait ressembler à:
3. Mettez à jour la configuration pour fonctionner avec
update-grub
Dernière étape, mettez à jour la configuration avec laquelle exécuter
update-grub
. Pour l'instant, GRUB2 utilisera le délai défini. Cette commande régénérera le/boot/grub.cfg
fichier.4. Vérifiez le résultat du script généré
Encore une fois, ouvrez
/boot/grub.cfg
et vérifiez le résultat autour de la ligne 109:Notez que la valeur à la ligne 109 est désormais 5 au lieu de 30 comme auparavant.
la source