Comment définir le délai d'attente grub et l'entrée de démarrage par défaut grub?

191

Dans Ubuntu 12.04 (ou supérieure), comment définir l'heure GRUB et le système d'exploitation par défaut (que je vois au démarrage) lorsque je double amorce Windows (7/8) et Ubuntu (12.04 ou une version ultérieure)?

météores
la source
Pouvez-vous donner plus d'informations. Que voulez-vous dire par "grub time" et quel est votre système d'exploitation par défaut? Dans votre menu de menu quelles sont les différentes lignes?
Julien Chau
1
temps grub signifie le compte à rebours lorsque je dois sélectionner l'OS à l'écran de démarrage du BIOS. Je suis désolé mais je ne sais pas exactement comment s'appelle ce menu de sélection de système d'exploitation. Je l'ai donc posté sous forme de temps.
météores

Réponses:

227
  • Appuyez sur Alt+ F2, tapez gksudo gedit /etc/default/grubappuyez sur Enteret entrez votre mot de passe.
  • Vous verrez le contenu suivant:

    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 = "éclaboussure silencieuse"
    GRUB_CMDLINE_LINUX = ""
    
  • Vous pouvez modifier la valeur par défaut de 0 à n’importe quel nombre, correspondant à l’entrée du menu de démarrage Grub (la première entrée est 0, la seconde est 1, etc.).

  • Vous pouvez modifier le "délai masqué" (pas de menu); et aussi afficher le compte à rebours ( GRUB_HIDDEN_TIMEOUT_QUIET=false)
  • Vous pouvez forcer l'affichage du menu de menu en mettant en commentaire les deux GRUB_HIDDENlignes avec un #en début de ligne.
  • Et définir le délai d'attente du menu grub (10 secondes par défaut)

  • Faites vos modifications, appuyez sur Ctrl+ Spour enregistrer et sur Ctrl+ Qpour quitter.

  • Important : Ouvrez un terminal avec Ctrl+ Alt+ Tet tapez sudo update-grubpour appliquer les modifications que vous venez de faire.
  • Redémarrez et vous devriez voir votre délai d'attente / changement d'entrée par défaut

Question liée:

ish
la source
Merci, @Raja, mais grub / grub2 était la principale différence. Si vous aviez le bon grub2, j'aurais volontiers modifié votre réponse au lieu d'en faire une autre :)
ish
merci, votre réponse a fonctionné, mais pouvez-vous m'expliquer s'il vous plaît les deuxième et troisième points (le temps mort caché et les lignes cachées de grub) à quoi servent-ils.
météores
2
S'il vous plaît, ne recommandez à personne de modifier l'option par défaut grub en définissant un index arbitraire. C'est terriblement peu intuitif et susceptible d'entraîner un désastre. L'utilisateur peut entrer le mauvais numéro ou changer lors de la mise à niveau, entraînant un comportement inattendu.
Cerin
2
Cela nécessite une mise à jour liée aux deux niveaux du menu actuel.
Hannu
1
@Cerin quelle est votre suggestion alors?
phil294
30

Si vous lisez le fichier que vous éditez dans l'exemple ci-dessus (/ etc / default / grub), vous remarquerez que les toutes premières lignes vous demandent de s'exécuter update-grubaprès avoir apporté des modifications afin de mettre à jour le fichier dans lequel grub se lit " obtenez ses instructions "(/boot/grub/grub.cfg). Notez que vous devez d'abord l'exécuter avec la sudocommande, car vous avez besoin des privilèges root pour exécuter la commande (c'est pourquoi le poster ci-dessus a dit de taper sudo update-grub). Cela entraînera l’écriture des modifications apportées dans /boot/grub/grub.cfg. Les deux lignes suivantes vous indiquent que vous pouvez lire la documentation complète des options de ce fichier (à nouveau, / etc / default / grub) en tapant info -f grub -n 'Simple configuration'.

Cela dit, définissez GRUB_TIMEOUT sur -1 si vous souhaitez définir le "temps de réponse" pour qu'il soit indéfini. En d'autres termes, il ne démarrera jamais automatiquement. Vous devrez faire une sélection.

Enfin, pour répondre à votre question, voici la description de ces "lignes cachées" directement à partir de la documentation mentionnée ci-dessus:

GRUB_HIDDEN_TIMEOUT
    Wait this many seconds for a key to be pressed before displaying
    the menu.  If no key is pressed during that time, boot
    immediately.  Unset by default.

GRUB_HIDDEN_TIMEOUT_QUIET
    In conjunction with `GRUB_HIDDEN_TIMEOUT', set this to `true' to
    suppress the verbose countdown while waiting for a key to be
    pressed before displaying the menu.  Unset by default.

J'espère que ça aide!

Sean
la source
14

Vous pouvez utiliser une application appelée Grub Customizer . C'est beaucoup plus facile.

Vous pouvez l'installer par:

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

Il existe un article de How-To Geek à ce sujet, Comment configurer le menu de démarrage de Linux GRUB 2 en toute simplicité . En outre, il existe un fil résolu sur les forums Ubuntu, Modifier l'ordre de démarrage dans GRUB 2, qui mentionne cet outil.

Voici quelques captures d'écran de ce logiciel:

screen_1

screen_2

screen_3

Kolappan Nathan
la source
1
Cela nécessite une mise à jour liée aux deux niveaux du menu actuel.
Hannu
5

J'ai suivi la première réponse, mais il semble qu'une mise à jour soit nécessaire si vous double-amorcez avec Windows 7 Pro et Ubuntu 16.04. Assurez-vous également que le démarrage sécurisé est désactivé dans le BIOS.

a) D'abord, il dit utiliser Alt+ F2quand je pense qu'il veut utiliser pour ouvrir une fenêtre de terminal. Dans mon cas c'est Ctrl+ Alt+ T.

b) Dans la première entrée, gksudo gedit /etc/default/grubla gksudocommande n'est pas installée par défaut dans Ubuntu 16.04 . Pour résoudre ce problème, procédez comme suit dans Terminal:

sudo -iet appuyez sur Enteret donnez votre mot de passe, puis à Enternouveau.

puis tapez:

gedit /etc/default/grubet appuyez sur Enter.

c) Vous verrez maintenant le menu de changement de fichier , comme illustré à la réponse 1. Suivez sa réponse jusqu'à ce qu'il arrive à Ctrl+ Spour enregistrer les modifications. Cela ne fonctionne pas dans Ubuntu 16.04, mais vous devriez voir un bouton de sauvegarde dans le coin supérieur droit de l'écran. Cliquez dessus.

d) Ctrl+ Qpour arrêter.

e) Type suivant sudo update-grubetEnter

f) Type exit. Vous devez le faire deux fois.

g) redémarrage

Je trouve que sur mon ordinateur après quelques logons le processus de démarrage ne serait pas montrer le grub écran au démarrage et donc je ne pouvais pas entrer dans Ubuntu comme je l' avais mis Windows comme mon démarrage par défaut avec un 7 secondes de retard au cas où je voulais dans Ubuntu.

Pour corriger ce problème, vous devez entrer dans Windows.

  1. Cliquez sur le menu de démarrage et tapez CMDdans le champ de recherche.

  2. Faites un clic droit sur la ligne CMD qui devrait être en haut de l'écran et produite par le clic droit.

  3. Cliquez sur Exécuter en tant qu'administrateur .

  4. Sur le type de ligne de commande bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi. Cette entrée a pour effet d’enregistrer le menu grub auprès du gestionnaire de démarrage Windows. (Crédit à: Grub ne s'affiche pas au démarrage pour Windows 8.1 Ubuntu 13.10 Dual Boot )

  5. Enfin, j'ai redémarré dans Windows.

J'espère que ça aide.

jsfines
la source
Pouvez-vous créer un lien vers "illustré dans la réponse 1" - je ne pouvais pas trouver ce que vous vouliez dire.
Tom Hale
Aussi "j'ai suivi la première réponse". Vous pouvez utiliser comme exemple mon format "Crédit à:". Excellent premier post. Bienvenue sur AskUbuntu.
Tom Hale
J'ai eu des problèmes étranges avec X-window lors de l'exécution d'applications graphiques telles que gedit en tant que sudo. Je suggère plutôt d'utiliser un éditeur de texte tel que nano.
Arthur Tacca
2
Alt+F2est le raccourci d'unité pour exécuter une commande en arrière-plan. Dans le menu qui s'ouvre, vous pouvez entrer n'importe quelle commande comme vous le feriez dans le terminal. Mais comme il n'ouvre pas de terminal, vous ne verrez aucune sortie de terminal et vous ne pouvez pas interagir avec le terminal. C'est pourquoi vous l'utiliserez généralement pour démarrer, par exemple, un programme d'interface graphique tel que gedit. Aussi, vous ne pouvez pas utiliser sudo car vous avez besoin du terminal pour cela. C'est pourquoi ils utilisent gksudo(l'interface graphique sudo). Si vous faites les commandes dans un terminal, vous pouvez simplement utiliser la normale sudocomme ceci: sudo gedit /etc/default/grubpas besoin de sudo -i.
Sébastien
@Sebastian Pour lancer une application graphique, sudo -Hc'est mieux , c'est à dire sudo -H gedit /etc/default/grub.
Wjandrea
2

L'utilisation d'une entrée par défaut basée sur un numéro m'a étonné depuis son introduction dans GRUB. C'est vraiment une mauvaise idée. Que diriez-vous de la mise à jour du noyau et de la reconfiguration automatique de grub? Qu'en est-il des utilisateurs non conscients qui préfèrent entrer à la fin de la liste? Les mises à jour briseraient cette configuration basée sur un nombre par défaut.

Utilisez plutôt l’option SAVED ici pour mémoriser la dernière entrée choisie:

GRUB_DEFAULT=SAVED
GRUB_SAVEDEFAULT=TRUE

Puis appliquez GRUB avec

sudo update-grub
CeDeROM
la source
1
Ce n’est pas un gros problème, mais cela n’explique pas comment ni où faire ces changements. Vous voudrez peut-être créer un lien vers une autre réponse.
Wjandrea
1

Cela ne marche pas non plus pour moi le 16.04.

Mais je l'ai résolu en modifiant le fichier /boot/grub/grub.cfg

sudo vim /etc/default/grub

éditer la bouffe

sudo update-grub
sudo chmod u+w /boot/grub/grub.cfg
sudo vim /boot/grub/grub.cfg

changer la valeur du délai d'attente

###segment in /boot/grub/grub.cfg:
set timeout_style=menu
if [ "${timeout}" = 0 ]; then
  #set timeout=10 # comment this original
  set timeout=0 # add this
fi

sudo chmod -w /boot/grub/grub.cfg
reboot
VictorLee
la source
0

Cela peut être fait facilement sans aucun code. Il suffit de suivre ces étapes.

  1. Système de fichiers ouvert.
  2. Ouvrir le /etcdossier.
  3. Ouvrir le defaultdossier.
  4. Recherchez le grubfichier et ouvrez-le avec leafpad(ou tout autre éditeur de texte).
  5. Réglez GRUB_TIMEOUTà vos besoins et enregistrez-le.
  6. Maintenant, ouvrez le terminal et tapez update-grub.
  7. Redémarrez votre système.

C'est ça.

Isac varghese k
la source
0

Je pense que vous avez une ligne comme celle-ci: GRUB_TIMEOUT_STYLE = caché

Changez-le en GRUB_TIMEOUT_STYLE = menu

Et commentez toutes les lignes concernant les fonctionnalités HIDDEN.

Voyageur du temps
la source