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

Dans Ubuntu 12.04 (ou supérieur), comment puis-je définir l'heure de GRUB et le système d'exploitation par défaut (que je vois au démarrage) car je double-démarre Windows (7/8) et Ubuntu (12.04 ou supérieur)?

  • Appuyer Alt + F2, type gksudo gedit /etc/default/grub appuyer Enter et entrez votre mot de passe.
  • Vous verrez le contenu suivant:

    >GRUB_DEFAULT=0GRUB_HIDDEN_TIMEOUT=0GRUB_HIDDEN_TIMEOUT_QUIET=trueGRUB_TIMEOUT=10GRUB_DISTRIBUTOR=`lsb_release -i -s 2 /dev/null || echo Debian`GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"GRUB_CMDLINE_LINUX=""
  • Vous pouvez changer la valeur par défaut de 0 à n'importe quel nombre, correspondant à l'entrée dans le menu de démarrage de Grub (la première entrée est 0, la seconde est 1, etc.)

  • Vous pouvez modifier le " délai d'expiration caché "(pas de menu); et également afficher le compte à rebours (GRUB_HIDDEN_TIMEOUT_QUIET=false)
  • Vous pouvez forcer le menu Grub à s'afficher en commentant les deux GRUB_HIDDEN lignes avec a # au début de la ligne
  • Et définissez le délai d'expiration du menu grub (la valeur par défaut est de 10 secondes)

  • Faites vos changements, appuyez sur Ctrl + S pour économiser et Ctrl + Q quitter

  • Important: Ouvrir un terminal avec Ctrl + Alt + T et type sudo update-grub pour appliquer les modifications que vous venez d'apporter
  • Redémarrez et vous devriez voir votre timeout/entrée par défaut changer

Question Liée:

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 d'exécuter update-grub après avoir apporté des modifications afin de mettre à jour le fichier réel que grub lit pour "obtenir ses instructions" (/boot/grub / grub.cfg). Notez que vous devez en fait l'exécuter avec le sudocommande d'abord car vous avez besoin des privilèges root pour exécuter la commande (c'est pourquoi l'affiche ci-dessus dit de taper sudo update-grub). Cela entraînera l'écriture des modifications que vous avez 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 (encore une fois, /etc/default/grub) en tapant info -f grub -n 'Simple configuration'.

Cela dit, définissez GRUB_TIMEOUT sur -1 si vous voulez que le "temps de grub" 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 les descriptions de ces "lignes cachées de grub" directement à partir de la documentation référencé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 cela vous aidera!

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

Vous pouvez l'installer en:

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

Si vous obtenez des erreurs lors de l'ajout de ppa, il est possible que grub-customizer soit déjà inclus. Essayez d'installer sans ajouter le ppa.

Il y a un article How-To Geek à ce sujet, Comment Configurer le Menu de démarrage de Linux GRUB 2 de manière simple. En outre, il y a 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_3

J'ai suivi la première réponse mais il semble avoir besoin d'une mise à jour si vous double-démarrez 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: Alt + F2 quand 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/grub le gksudo la commande n'est pas installée par défaut dans Ubuntu 16.04. Pour contourner ce problème, procédez comme suit dans Terminal:

sudo -i et presse Enter et donnez votre mot de passe et ensuite Enter Encore une fois.

puis tapez:

gedit /etc/default/grub et presse Enter.

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

d) Ctrl + Q quitter.

e) Type suivant sudo update-grub et Enter

f) Type exit. Tu dois le faire deux fois.

g) Redémarrer

J'ai trouvé que sur mon ordinateur après quelques connexions, le processus de démarrage n'affichait pas le grub écran au démarrage et donc je ne pouvais pas entrer dans Ubuntu car j'avais défini Windows comme démarrage par défaut avec un délai de 7 secondes au cas où je voudrais entrer dans Ubuntu.

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

  1. Cliquez sur le menu Démarrer et tapez CMD dans la zone de recherche.

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

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

  4. Sur la ligne de commande tapez bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi. Cette entrée a pour effet d'enregistrer le menu grub avec le gestionnaire de démarrage de 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 t'aidera.

L'utilisation d'une entrée par défaut identifiée par un numéro m'a étonné car elle a été introduite dans GRUB. C'est vraiment une mauvaise idée. Il existe de nombreuses situations qui entraîneront un changement de numérotation (c'est-à-dire des mises à jour avec des entrées sauvegardées).

Au lieu de cela, utilisez ENREGISTRER pour se souvenir de la dernière entrée choisie. Mettre /etc/default/grub avec:

GRUB_DEFAULT=savedGRUB_SAVEDEFAULT=true

Appliquez ensuite la mise à jour GRUB avec:

sudo update-grub

Référence: http://www.gnu.org/software/grub/manual/grub/grub.html#Simple-configuration

Ça ne marche pas pour moi le 16.04 aussi.

Mais je l'ai corrigé en changeant le fichier / boot/grub / grub.cfg

sudo vim /etc/default/grub

modifier grub

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

modifier la valeur du délai d'attente

###segment in /boot/grub/grub.cfg:set timeout_style=menuif [ "${timeout}" = 0 ]; then  #set timeout=10 # comment this original  set timeout=0 # add thisfisudo chmod -w /boot/grub/grub.cfgreboot

Je pense que tu as une ligne comme celle-ci:

GRUB_TIMEOUT_STYLE=hidden

Changez-le en:

GRUB_TIMEOUT_STYLE=menu

Et commenter toutes les lignes concernant HIDDEN caractéristique.

Dans 20.10 (au moins) avec une machine basée sur EFI, vous devez spécifier GRUB_RECORDFAIL_TIMEOUT comme le délai d'attente dû à ce qui est à mon avis un bug (https://bugs.launchpad.net/ubuntu/+source/grub2 / + bug / 1918736)

En tant que tel, votre /etc/default/grub devrait contenir:

GRUB_RECORDFAIL_TIMEOUT=10

pour un délai d'attente de 10 secondes.

POUR mettre à jour la configuration de grub et vérifier la sortie correcte:

sudo update-grub && grep -B3 "set timeout=" /boot/grub/grub.cfg

Et tu devrais voir:

...if [ $grub_platform = efi ]; then  set timeout=10...

Cela peut être fait facilement sans aucun code. Suivez simplement ces étapes.

  1. Ouvrez le système de fichiers.
  2. Ouvrir /etc dossier.
  3. Ouvrir default dossier.
  4. Trouver grub fichier et ouvrez-le avec leafpad (ou tout autre éditeur de texte).
  5. Définir GRUB_TIMEOUT à vos besoins et enregistrez-le.
  6. Ouvrez maintenant le terminal et tapez update-grub.
  7. Redémarrez votre système.

C'est ça.

À propos de la définition de l'entrée par défaut de Grub, vous pouvez utiliser (au moins Ubuntu 20+, CentOS 7+ et Debian 10+) grub-set-default.

Vous l'utilisez en combinaison avec une entrée de menu dans votre grub.cfg fichier (sur ma machine stocké sur /boot/grub/grub.cfg).

Par exemple, si je voulais charger une entrée de menu:

menuentry 'GNU/Linux, with Linux 5.10.0-rc5.bm.1-amd64+' --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.10.0-rc5.bm.1-amd64+-advanced-f3257130-7310-45a9-990b-d0393ee336f5'

Alors je peux faire grub-set-default "GNU/Linux, with Linux 5.10.0-rc5.bm.1-amd64+" pour définir cette entrée comme valeur par défaut. Vous pouvez vérifier que cela a fonctionné en vérifiant grubenv (stocké sur ma machine à /boot/grub/grubenv). Le mien dit

saved_entry=GNU/Linux, with Linux 5.10.0-rc5.bm.1-amd64+

Assurez-vous que vous avez GRUB_DEFAULT=saved dans votre /etc/default/grub fichier.

Vous pouvez également définir un démarrage unique à l'aide de la commande grub-reboot, de la même manière que ci-dessus.

grub time signifie le compte à rebours lorsque je dois sélectionner le système d’exploitation sur 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 du système d’exploitation, alors je l’ai posté sous le nom de grub time.

Pouvez-vous donner plus d’informations. Qu’entendez-vous par “grub time” et quel est votre système d’exploitation par défaut. Dans votre menu grub, quelles sont les différentes lignes?