Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
grub-pc [Le 26/02/2017, 12:20]
chamblard [Réinstaller/Restaurer GRUB 2] ERREUR?
grub-pc [Le 14/10/2023, 14:51] (Version actuelle)
serged [Démarrer sur le dernier OS chargé]
Ligne 1: Ligne 1:
 {{tag>​boot amorçage}} {{tag>​boot amorçage}}
- 
----- 
  
 ====== GRUB 2 (version Compatibles PC) ====== ====== GRUB 2 (version Compatibles PC) ======
Ligne 16: Ligne 14:
   * Disposer des [[:​sudo|droits d'​administration]] ;   * Disposer des [[:​sudo|droits d'​administration]] ;
   * Disposer d'une connexion à Internet configurée et activée.   * Disposer d'une connexion à Internet configurée et activée.
- 
 ===== Installation ===== ===== Installation =====
  
 Lors d’une **installation classique** d'​Ubuntu ([[http://​www.ubuntu-fr.org/​telechargement|depuis un support d'​installation]]),​ si vous n’avez pas paramétré les options avancées, GRUB 2 est **installé automatiquement** et est votre chargeur d’amorçage principal pour Ubuntu. Lors d’une **installation classique** d'​Ubuntu ([[http://​www.ubuntu-fr.org/​telechargement|depuis un support d'​installation]]),​ si vous n’avez pas paramétré les options avancées, GRUB 2 est **installé automatiquement** et est votre chargeur d’amorçage principal pour Ubuntu.
  
-Une vérification peut être faite depuis un [[:​terminal]] avec la [[:​commande_shell|commande]] :​ <​code>​grub-install -V</​code> ​+Une vérification peut être faite depuis un [[:​terminal]] avec la [[:​commande_shell|commande]] :​ <​code>​grub-install -V</​code>​
 Si vous voyez //%%GNU GRUB%% 1.98// ou +, vous avez GRUB 2, si c’est 0.97, vous avez [[:Grub Legacy]]. Si vous voyez //%%GNU GRUB%% 1.98// ou +, vous avez GRUB 2, si c’est 0.97, vous avez [[:Grub Legacy]].
  
 Si vous **souhaitez installer** Grub 2 sur le [[:​mbr|MBR]] **ou le réinstaller** après un souci, référez vous à **[[#​Réinstaller/​Restaurer GRUB 2|cette explication]]**. Si vous **souhaitez installer** Grub 2 sur le [[:​mbr|MBR]] **ou le réinstaller** après un souci, référez vous à **[[#​Réinstaller/​Restaurer GRUB 2|cette explication]]**.
  
-===== Utilisation du menu ===== +===== Fonctionnement général ​===== 
-**Si vous n'avez qu'un seul système d'​installé,​ Grub ne s'​affiche pas !** Pour le voir, il suffit de maintenir la **touche Majuscule (shift)** enfoncée **au démarrage** de l'​ordinateur.+La configuration finale de grub est dans le fichier ​**/​boot/​grub/​grub.cfg**
  
-Dans les autres cas, vous verrez ​la liste des systèmes installés ​+Ce fichier est généré automatiquement par la commande **update-grub** à partir ​des entrées suivantes ​
-  * Si vous ne faites ​**rien**, le système sélectionné par défaut sera **lancé automatiquement** au bout de quelques secondes. +  * Le fichier de paramétrage général : **/​etc/​default/​grub** 
-  * Vous pouvez en **choisir** un autre avec les **flèches du clavier** et le lancer avec la **touche '​entrée'​** (ou la flèche vers la droite).+  * Tous les fichiers dans : **/​etc/​grub.d/​** 
 +    ​dont le fichier ​**/​etc/​grub.d/​40_custom** qui contient votre configuration personnelle en option
  
-Autres actions possibles : 
-  * avec la **touche '​e'​** vous pouvez **éditer** la ligne du menu pour, par exemple, ajouter un paramètre (Ctrl X : lance le système en applicant la modification,​ Echap permet de revenir en arrière sans changement) 
-  * avec la **touche '​c'​** vous pourrez intervenir sur Grub en **ligne de commande** (Echap pour revenir au menu) 
-  ​ 
-===== Paramétrage avec une application ===== 
  
-Sous [[:KDE]], vous pouvez ​[[:​tutoriel:​comment_installer_un_paquet|installer le paquet]] **[[apt>​kde-config-grub2]]**. Sous d'​autres environnements,​ vous pouvez notamment utiliser [[:​grub-customizer|Grub Customizer]] et  [[:​Superbootmanager|Super Boot Manager]]. Ces applications vous permettent, entre autres de :+Plus d'​information sur le **[[:​tutoriel:​grub2_parametrage_manuel|paramétrage manuel de Grub]]**.
  
-  * choisir une entrée de menu d’amorçage à sélectionner par défaut ; 
-  * masquer, changer l’ordre, ajouter ou supprimer des entrées du menu d’amorçage ;​ 
-  * ajouter des paramètres au noyau ; 
-  * modifier la résolution d’affichage ;​ 
-  * modifier les couleurs du menu GRUB ; 
-  * ajouter une image d’arrière-plan. 
  
-===== Paramétrage manuel =====+Pour un paramétrage avec interface graphique : 
 +  * Sous [[:KDE]] pour les versions jusqu'​à Kubuntu Wily (15.10) : **[[apt>​kde-config-grub2]]**  
 +  * Sous d'​autres environnements ou pour les versions Kubuntu Xenial (16.04) et ultérieures : 
 +    * [[:​grub-customizer|Grub Customizer]]
  
-Pour éditer manuellement les fichiers ​de paramétrageveuillez vous référer à **[[:​tutoriel:​grub2_parametrage_manuel|ce tutoriel]]**.+===== Utilisation du menu ===== 
 +**Par défaut, le menu de Grub ne s'​affiche pas dans les configurations ne comportant qu'un seul système.** 
 + 
 +Pour l'​afficheril faut, **au démarrage**,​ maintenir enfoncée la **touche Majuscule (shift)** ​ ( ou la touche** [[https://​forum.ubuntu-fr.org/​viewtopic.php?​pid=21778237#​p21778237|ECHAP]]**). 
 +<note help> Appuyer 3 ou 4 fois sur la touche Maj ou  Echap à l'​apparition du logo du bios fonctionne aussi.</​note>​ 
 +Un comportement différent peut être obtenu en [[:​tutoriel:​comment_modifier_un_fichier|modifiant]] le fichier /​etc/​default/​grub ​**avec les droits d'​administrateur** : **GRUB_TIMEOUT_STYLE=menu** (au lieu de "​hidden"​) et **GRUB_TIMEOUT=10** (au lieu de 0) puis en faisant la mise à jour de grub par la commande "sudo update-grub"​. 
 + 
 + 
 +Dans les autres cas, Grub affiche le menu qui permet de choisir le système désiré : 
 +  * sans intervention aucune, le système sélectionné par défaut est **lancé automatiquement** après quelques secondes. 
 +  * un autre des systèmes affichés peut être choisi puis lancé par l'​utilisation des **flèches du clavier** : navigation par les **flèches 'vers le bas'** ou **'​vers le haut'​** ​ puis lancement avec la **touche '​entrée'​** (ou la flèche vers la droite). 
 + 
 +Il est également possible : 
 +  * de modifier la ligne du menu avec la **touche '​e'​** pour, par exemple, ajouter un paramètre (Ctrl X : lance le système en appliquant la modification,​ Echap permet de revenir en arrière sans changement) 
 +  * de basculer Grub en **ligne de commande** avec la **touche '​c'​** (Echap pour revenir au menu) 
 +  ​
  
 ===== Habillage et thèmes ===== ===== Habillage et thèmes =====
Ligne 58: Ligne 63:
   * **[[:​tutoriel:​grub2_parametrage_manuel#​THEME|l'​utilisation des Thèmes Grub2]]** : où les trouver et comment les mettre en oeuvre   * **[[:​tutoriel:​grub2_parametrage_manuel#​THEME|l'​utilisation des Thèmes Grub2]]** : où les trouver et comment les mettre en oeuvre
  
-===== Maintenance ​=====+===== Astuce ==== 
 +En cas de dual-boot / multi-système d'​exploitation : au lieu de redémarrer la machine et d'​aller au menu Grub pour choisir le système d'​exploitation à démarrer, on peut le faire directement à partir d'​Ubuntu avec cette commande. L'​action est temporaire et valable uniquement pour le prochain redémarrage. Le chiffre étant le numéro de ligne du choix du menu Grub (0 étant la première ligne). Par exemple, si Ubuntu est la première ligne du menu Grub et Windows la deuxième ligne, alors cette commande, exécutée sous Ubuntu, va directement redémarrer la machine sous Windows. Rq : reboot nécessite sudo sur les anciens Ubuntu. 
 +<​code>​sudo grub-reboot 1 ; reboot</​code>​ 
 + 
 + 
 +===== Réparation & maintenance ​=====
 ==== Réinstaller/​Restaurer GRUB 2 ==== ==== Réinstaller/​Restaurer GRUB 2 ====
-S'il a été effacé ou désactivé suite à l’installation d’un autre système d’exploitation ou une autre raison, voici comment vous pouvez le récupérer ​:+ 
 +Avant de réparer Grub par quelque méthode que ce soit, il peut s'​avérer nécessaire d'​installer la version la plus récente du logiciel et de ses commandes (grub-install,​ grub-mkconfig,​ update-grub,​ …) : 
 +<​code>​sudo apt purge grub grub-pc grub-common -y && sudo apt install grub-pc -y</​code>​ 
 + 
 +Plusieurs options sont offertes pour restaurer le fonctionnement correct de Grub après qu'il a été effacé ou détérioré ​:
  
 === Via le Réparateur de Démarrage === === Via le Réparateur de Démarrage ===
  
-La méthode la plus simple est d'utiliser le [[:​boot-repair|réparateur de Démarrage]] (outil graphique).+La méthode la plus simple est l'utilisation du [[:​boot-repair|réparateur de Démarrage]] (outil graphique).
  
-=== Depuis votre "​ancien" ​Ubuntu ​relancé ​=== +=== Depuis votre Ubuntu ​ayant démarré ​=== 
-Si vous avez la **possibilité de relancer** le  système qui contient le **grub que vous souhaitez rétablir** (avec une [[#Créer une clé USB de secours|clé USB de secours]], un autre menu Grub,​..), ​il vous suffira ​alors de saisir ​**dans un terminal ​cette commande** : +Si vous avez la **possibilité de démarrer** le  système qui contient le **grub que vous souhaitez rétablir** (avec une [[#Créer une clé USB de secours|clé USB de secours]], un autre menu Grub,..), alors tapez **dans un terminal ​ces commandes** : 
-<​code>​sudo grub-install /​dev/​sda</​code>​+<​code>​sudo fdisk -l # -L pour identifier le disque contenant Ubuntu, relevez son code, par exemple /dev/sda 
 +sudo os-prober 
 +sudo update-grub 
 +sudo grub-install /dev/CodeDuDisqueUbuntu # par exemple ​sda sans chiffre</​code>​
 Si vous voulez définir une partition en particulier (ou un disque en particulier) :​ <​code>​sudo grub-install --force /​dev/​sda7</​code>​ Si vous voulez définir une partition en particulier (ou un disque en particulier) :​ <​code>​sudo grub-install --force /​dev/​sda7</​code>​
 Dans cette commande l'​exemple considère qu'il s'agit du disque a, partition 7. Dans cette commande l'​exemple considère qu'il s'agit du disque a, partition 7.
Ligne 77: Ligne 94:
 Si vous réussissez à lancer un autre linux contenant Grub2 (live-cd, système sur un autre disque,..), vous avez 2 cas de figure : Si vous réussissez à lancer un autre linux contenant Grub2 (live-cd, système sur un autre disque,..), vous avez 2 cas de figure :
   * **pour une installation classique** la commande à lancer est :   * **pour une installation classique** la commande à lancer est :
-<​code>​sudo grub-install --root-device=/​media/​NomUtilisateur/​pointMontagePartitionContenantBoot /​dev/​sdb</​code>​ +<​code>​sudo grub-install --root-directory=/​media/​NomUtilisateur/​pointMontagePartitionContenantBoot /​dev/​sdb</​code>​ 
-  * **pour une installation ayant un boot sur une partition séparée**,​ la commande est (**b**oot au lieu de **r**oot) :  +  * **pour une installation ayant un boot sur une partition séparée**,​ la commande est (**b**oot au lieu de **r**oot) : 
-<​code>​sudo grub-install --boot-device=/​media/​NomUtilisateur/​pointMontagePartitionBoot /​dev/​sdb</​code>​ +<​code>​sudo grub-install --boot-directory=/​media/​NomUtilisateur/​pointMontagePartitionBoot /​dev/​sdb</​code>​ 
-<note warning>​INFO du 26/02/2016 : la commande "sudo grub-install --boot-device......."​ ne marche pas sur live-usb 16.04.2 !!! elle n'​éxiste pas dans le man !! est-ce toujours à jour? </​note>​+
 Il faut que la partition cible soit montée (ouverte via le gestionnaire de fichiers par exemple). Il faut que la partition cible soit montée (ouverte via le gestionnaire de fichiers par exemple).
 Pour savoir si le disque est bien /dev/sdb, on peut lancer la commande //'​sudo blkid'//​. Pour savoir si le disque est bien /dev/sdb, on peut lancer la commande //'​sudo blkid'//​.
 +=== Cas particulier de la version 21.04 ===
 +Cette version installe automatiquement la structure de boot EFI y compris lorsque l'​ordinateur n'est pas équipé de cette fonctionnalité. La réparation à faire est la suivante:
 +  * Booter avec le support d'​installation.
 +  * Lancer [[gparted|]]
 +  * Mettre le drapeau **bios_grub** dans la partition de  boot FAT32 afin de la transformer en partition [[gpt|bios-boot]]
 +  * En profiter pour mémoriser la partition contenant le logiciel ubuntu. Par exemple /dev/sda2
 +  * Quitter gparted et monter la partition ubuntu grâce à cette commande <code bash> sudo mount -v  /​dev/​sda2 ​ /mnt </​code>​
 +  * Faire l'​installation ​ du grub légacy ​ grâce à cette commande <code bash>​sudo grub-install --boot-directory=/​mnt /dev/sda </​code>​
  
-==== Créer une clé USB de secours ​==== +==== Démarrer Ubuntu à partir ​de grub> et grub rescue> ​====
-Avant toute installation de nouveau système, il peut être judicieux de faire une clé USB de secours pour pouvoir remettre en route votre Grub, au cas où.+
  
-  - avec [[:​Gparted]] (présent sur le live-cd d'Ubuntu)en lieu et place de la ou des partition(s) existante(s) ​sur votre clé, on créera 2 partitions : +Si Ubuntu ​est bien installé mais que seul Grub est casséalors vous devriez arriver ​sur une ligne de commande ​de grub> ​ou grub rescue>Voici comment faire pour démarrer Ubuntu afin de réparer Grub par la suite.
-    * une de **8 Mo de type 'non formaté'​** à laquelle on affectera le **drapeau '​boot'​** (**ou '​grub_bios'​** si on est sur table de partition gpt) +
-    * une pour le **reste** de type **'​fat32'​** (avantage : pas de gestion des droits et lisible sur Windows, tablettes, etc)On lui mettra l'​étiquette '​GRUB-SOS' ​pour qu'​elle soit montée sous ce nom. +
-  - lancer un gestionnaire ​de fichiers et cliquer dessus pour voir son contenu (ainsi elle est montée automatiquement sur /​media/​NomUtilisateur) +
-  - on peut maintenant lancer ​la commande suivante (le NomUtilisateur sur un live-cd Ubuntu est : ubuntu) : +
-<​code>​sudo grub-install --root-device=/​media/​ubuntu/​GRUB-SOS /​dev/​sdb</​code>​+
  
-Maintenant, vous pouvez **copier coller** tout le contenu du dossier **/​boot/​grub** ​du système ​que vous souhaitez pouvoir systématiquement démarrer vers le dossier identique de la clé USB.+Suivez les instructions en fonction ​du Grub que vous voyez.
  
-Dorénavantsi vous faites ​démarrer ​votre ordinateur sur la clé USBvous avez accès à votre système principal ​(car il est appelé ​par son UUID).+**A partir de grub rescue>​** 
 + 
 +{{::​grub_rescue.png?​400|}} 
 + 
 +Il faut identifier la partition Ubuntu et définir les commandes pour arriver au Grub normal. 
 + 
 +<​code>​ls # lister les partitions 
 +# le résultat sera du genre : (hd0) (hd0,msdos1) (hd0,​msdos2)... 
 +# utilisez LS pour chaque partition afin d'​identifier celle d'​Ubuntu 
 +ls (hd0,​msdos1) 
 +ls (...) 
 +# la partition Ubuntu donnera un résultat du genre : 
 +# ... Filesystem is ext2 
 +# Une fois la partition Ubuntu trouvée, tapez ces commandes en utilisant la bonne identification 
 +# Pour l'​exemple,​ on utilisera (hd0,​msdos1) 
 +set root=(hd0,​msdos1) 
 +set prefix=(hd0,​msdos1)/​usr/​lib/​grub 
 +insmod normal 
 +normal</​code>​ 
 + 
 +{{::​grub_rescue_completed.png?​400|}} 
 + 
 +En validant la dernière commande, Grub va alors démarrer ​en grub normal. Suivez ​la suite des instructions pour grub normal. 
 + 
 +**A partir de grub> normal** 
 + 
 +{{::​grub_normal.png?​400|}} 
 + 
 +Il faut identifier la partition Ubuntu et définir les commandes pour démarrer Ubuntu. 
 + 
 +<​code>​ls # lister les partitions 
 +# le résultat sera du genre : (hd0) (hd0,msdos1) ​(hd0,​msdos2)... 
 +# utilisez LS pour chaque partition afin d'​identifier celle d'​Ubuntu 
 +ls (hd0,​msdos1) 
 +ls (...) 
 +# la partition Ubuntu donnera un résultat du genre : 
 +# ... Filesystem is ext2 
 +# Une fois la partition Ubuntu trouvée, tapez ces commandes en utilisant la bonne identification 
 +# Pour l'​exemple,​ on utilisera (hd0,​msdos1) 
 +set root=(hd0,​msdos1) 
 +linux /vmlinuz root=/​dev/​sda1 ro 
 +initrd /​initrd.img 
 +boot</​code><​note aide>il est possible que les bonnes commandes soient<​code>​set root=(hd0,​msdos1) 
 +linux /​boot/​vmlinuz root=/​dev/​sda1 ro 
 +initrd /​boot/​initrd.img 
 +boot</​code></​note>​ 
 + 
 +{{::​grub_normal_boot.png?​400|}} 
 + 
 +En validant la dernière commande, Ubuntu va alors démarrer. Ensuite, suivez le paragraphe § 7.1.2 pour réparer Grub à partir d'​Ubuntu. 
 + 
 +**A partir de grub> ​ error : unknownfile system Entering rescue mode...** 
 + 
 +<​code>​ls # lister les partitions 
 +# le résultat sera du genre : (hd0) (hd0,​msdos1) (hd0,​msdos2) 
 +# utilisez LS pour chaque partition afin d'​identifier celle d'​Ubuntu 
 +ls (hd0,​msdos1) 
 +ls (hd0,​msdos2) 
 +# Donc si les partitions Ubuntu donnent un résultat du genre : 
 +unknownfile system  
 +# utiliser SET pour rechercher le chemin qui devrait afficher ​par exemple (le numéro de partition n'est pas le même suivant le cas
 +grub rescue> set 
 +cmdpath=(hd0) 
 +prefix=(hd0,​msdos5)/​boot/​grub 
 +root=hd0,​msdos5 
 +# Une fois la partition Ubuntu trouvée, tapez ces commandes en utilisant la bonne identification 
 +# Pour l'​exemple,​ (hd0,​msdos5) 
 +set root=(hd0,​msdos5) 
 +set prefix=(hd0,​msdos5)/​boot/​grub 
 +insmod normal 
 +normal</​code>​ 
 + 
 +{{:​grub-unknow-filesystem.png?​direct&​400|}} 
 + 
 +En validant la dernière commande, Ubuntu va alors démarrer. Ensuite, suivez le paragraphe § 7.1.2 pour réparer Grub à partir d'​Ubuntu. 
 + 
 + 
 +==== Créer une clé USB de secours ==== 
 +Avant toute installation de nouveau système, il peut être judicieux de faire une clé USB de secours pour pouvoir remettre en route votre Grub, au cas où.
  
-Vous pourrez aussi **éditer** directement le fichier **grub.cfg de la clé USB** sous réserve de faire un 'clic droit/​propriétés/​permissions'​ dessus pour le mettre en '​lecture/​écriture'​ au lieu de '​lecture seule'​. Par exemple, vous pourrez y mettre ​[[:tutoriel:​grub2_parametrage_manuel#Chaîner un autre menu|un menu de chaînage]] ou un menu pour lancer l'[[:tutoriel:​grub2_lancer_des_images_iso#​Menu type|iso d'un live-cd]],..+Pour cela, vous pouvez ​**suivre ​[[:tutoriel/​grub2_lancer_des_images_iso#grub_sur_une_cle_usb|ce tutoriel]]**.
  
 ==== Ajouter du rootdelay au démarrage ==== ==== Ajouter du rootdelay au démarrage ====
 Si vous tombez sur une Busybox au démarrage, il est possible que le système n’ait pas attendu assez longtemps pour que les disques durs s’initialisent. Vous pouvez continuer le démarrage par un simple CTRL+D dans la Busybox. Si cela fonctionne, une solution sera d'​insérer un rootdelay dans grub. Si vous tombez sur une Busybox au démarrage, il est possible que le système n’ait pas attendu assez longtemps pour que les disques durs s’initialisent. Vous pouvez continuer le démarrage par un simple CTRL+D dans la Busybox. Si cela fonctionne, une solution sera d'​insérer un rootdelay dans grub.
  
-Pour cela [[:​tutoriel:​comment_modifier_un_fichier|éditer]] /​etc/​default/​grub **avec les droits d'​administration** (commande ​"gksudo gedit /​etc/​default/​grub") pour mettre par exemple : +Pour cela [[:​tutoriel:​comment_modifier_un_fichier|éditer]] /​etc/​default/​grub **avec les droits d'​administration** (voir [[tutoriel:​comment_modifier_un_fichier|tuto ​"Comment modifier un fichier ?"]]) pour mettre par exemple :
-en+
 <​file>​GRUB_CMDLINE_LINUX_DEFAULT="​rootdelay=40 quiet splash"</​file>​ <​file>​GRUB_CMDLINE_LINUX_DEFAULT="​rootdelay=40 quiet splash"</​file>​
  
Ligne 115: Ligne 211:
 uuid 70e29811-71a3-4553-a16c-1cce2ff334ed uuid 70e29811-71a3-4553-a16c-1cce2ff334ed
 kernel /​boot/​grub/​i386-pc/​core.img</​file>​ kernel /​boot/​grub/​i386-pc/​core.img</​file>​
 +
 +==== Amorçage multiple :​ privilégier un grub  ====
 +En cas d'​installation en parallèle de plusieurs [[:​versions|versions d'​Ubuntu]] sur le même disque dur, **la dernière installation impose son grub**. Mais si vous souhaitez imposer au démarrage le grub d'une autre installation (celle que vous utilisez par défaut, par exemple) :​
 +  - allez dans cette autre installation, ​
 +  - ouvrez le [[:​terminal]],​ et tapez :
 +<​code>​sudo os-prober
 +sudo update-grub
 +sudo grub-install /​dev/​sda</​code>​
 +avec''​ /​dev/​sda''​ si on veut pointer sur le disque ''​sda''​\\ avec ''/​dev/​sdb''​ si on veut pointer sur le disque ''​sdb''​\\ avec ''/​dev/​sdc''​ si on veut pointer sur le disque ''​sdc''​\\ etc…
 +
 +<​note>:​-) Lorsque l'on souhaite faire cohabiter //Ubuntu// avec un autre système, tel que //​Windows®//,​ il peut être opportun d'​installer //Grub// sur un disque différent de celui où est installé le chargeur d'​origine. Il suffira de changer dans le BIOS l'​ordre d'​examen des disques (lors du démarrage de l'​ordinateur) pour privilégier //Grub// ou un autre système. Ainsi, le disque d'​origine n'est pas modifié et le retour en arrière est plus simple.</​note>​
 +
 +==== Démarrer sur le dernier OS chargé ====
 +
 +Souvent les mises à jour de certains OS propriétaires demandent plusieurs reboots après un temps de calcul conséquent.
 +
 +Pour éviter de redémarrer sur Ubuntu, il faut modifier la ligne :
 +<​code>​
 +GRUB_DEFAULT="​0"​
 +</​code>​
 +par
 +<​code>​
 +GRUB_DEFAULT=saved
 +GRUB_SAVEDEFAULT=true
 +</​code>​
 +Suivi d'un :
 +<​code>​
 +sudo update-grub
 +</​code>​
  
 ===== Problèmes connus ===== ===== Problèmes connus =====
 +
 ====Grub n'​apparaît pas au démarrage==== ====Grub n'​apparaît pas au démarrage====
 +
 En cas de double boot, le menu de grub doit s’afficher par défaut, si l’écran de l’ordinateur reste noir au démarrage avec un message d’erreur de l’écran, il faut changer une option dans grub pour obliger un affichage non graphique. En cas de double boot, le menu de grub doit s’afficher par défaut, si l’écran de l’ordinateur reste noir au démarrage avec un message d’erreur de l’écran, il faut changer une option dans grub pour obliger un affichage non graphique.
-Ouvrir le terminal, écrire + 
-<​code>​sudo xdg-open ​/​etc/​default/​grub</​code>​ +Pour cela [[:​tutoriel:​comment_modifier_un_fichier|éditer]] ​/​etc/​default/​grub ​**avec les droits d'​administration** (voir [[tutoriel:​comment_modifier_un_fichier|tuto "​Comment modifier un fichier ?"]]) pour enlever le croisillon ​« # » au début de la ligne
-Enlever le [[wpfr>​wiki|croisillon]] « # » au début de la ligne+
 <​file>#​GRUB_TERMINAL=console</​file>​ <​file>#​GRUB_TERMINAL=console</​file>​
 Enregistrer le fichier et quitter l’éditeur de texte puis dans le terminal :​ Enregistrer le fichier et quitter l’éditeur de texte puis dans le terminal :​
 <​code>​sudo update-grub</​code>​ <​code>​sudo update-grub</​code>​
 Redémarrer le pc. Redémarrer le pc.
 +
 +==== Windows ou d'​autres système n'​apparaissent plus dans le menu ====
 +
 +Depuis Ubuntu [[:​jammy|Jammy 22.04]] //OS Prober// est désactivé par défaut, donc Windows n'est plus détecté automatiquement.
 +
 +Pour modifier ce comportement vous pouvez ajouter la ligne suivante au fichier ''/​etc/​default/​grub''​ :
 +<file conf grub>​GRUB_DISABLE_OS_PROBER=false</​file>​
 +
 +Pour en savoir plus à ce sujet vous pouvez consulter [[https://​forum.ubuntu-fr.org/​viewtopic.php?​id=2073309|ce sujet]] sur le forum.
  
 ==== grub:sh (Shell GRUB 2 à l'​amorçage) ==== ==== grub:sh (Shell GRUB 2 à l'​amorçage) ====
 +
 Vous démarrez votre ordinateur et au lieu de charger directement Ubuntu ou afficher un menu vous permettant de choisir un système d’exploitation à charger, votre écran vous montre une ligne **grub:​sh>​**. Ce que vous obtenez ici est un //shell//, une interface en ligne de commande qui permet de dépanner le chargeur d’amorçage GRUB 2. Si vous obtenez, de manière non-intentionnelle,​ une telle invite de commande, il y a de fortes chances que le fichier de menu de GRUB 2 soit corrompu. L’invite de commande vous permet d’exécuter des commandes, malgré les erreurs des fichiers de menu, afin de tout de même charger Ubuntu. Vous démarrez votre ordinateur et au lieu de charger directement Ubuntu ou afficher un menu vous permettant de choisir un système d’exploitation à charger, votre écran vous montre une ligne **grub:​sh>​**. Ce que vous obtenez ici est un //shell//, une interface en ligne de commande qui permet de dépanner le chargeur d’amorçage GRUB 2. Si vous obtenez, de manière non-intentionnelle,​ une telle invite de commande, il y a de fortes chances que le fichier de menu de GRUB 2 soit corrompu. L’invite de commande vous permet d’exécuter des commandes, malgré les erreurs des fichiers de menu, afin de tout de même charger Ubuntu.
  
 Pour charger tout de même Ubuntu, entrez la suite de commandes suivante. Pour charger tout de même Ubuntu, entrez la suite de commandes suivante.
-  * Faites très attention à la structure et la graphie des commandes. ​Une espace mal placée ​ou une lettre majuscule inscrite en minuscule peut rendre la commande inopérante ;​+  * Faites très attention à la structure et la graphie des commandes. ​Un espace mal placé ​ou une lettre majuscule inscrite en minuscule peut rendre la commande inopérante ;​
   * Chaque ligne doit être entrée séparément. À la fin de chaque ligne de commande, appuyez sur la touche [Entrée] de votre clavier pour la valider.   * Chaque ligne doit être entrée séparément. À la fin de chaque ligne de commande, appuyez sur la touche [Entrée] de votre clavier pour la valider.
  
Ligne 159: Ligne 295:
 Le problème semble être que GRUB2 cherche les UUID de toutes les partitions au démarrage, jusqu’à trouver celle contenant /boot/grub. Cela prend du temps. Le problème semble être que GRUB2 cherche les UUID de toutes les partitions au démarrage, jusqu’à trouver celle contenant /boot/grub. Cela prend du temps.
  
-Solution :​ installer une version plus récente de GRUB, par exemple via les Options avancées de [[:​Boot-Repair]].+**Solution ​1**  : installer une version plus récente de GRUB, par exemple via les Options avancées de [[:​Boot-Repair]]. 
 + 
 +**Solution 2** : modifier le disque de démarrage dans le BIOS pour démarrer sur le disque où se trouve votre Ubuntu. 
 +Plus de détails dans [[https://​forum.ubuntu-fr.org/​viewtopic.php?​id=351117|ce sujet du forum]]. 
 + 
 +==== Long temps de chargement / grub.cfg trop gros==== 
 +Ca peut se produire en présence de multiboot avec plusieurs systèmes GNU/Linux utilisant aussi GRUB. Cela semble dû au fait que grub-mkconfig (appelé par update-grub) lit le fichier grub.cfg des autres systèmes mais ne traite pas correctement les entrées de menu de ce fichier provenant elles-mêmes d'​autres systèmes. Il les ajoute, et ça reboucle, ça s'​allonge... [[https://​www.debian-fr.xyz/​viewtopic.php?​p=19308&​sid=da9eb6e3aad192a4fa05af4d4443c293#​p19308|Plus de détail dans ce post de www.debian-fr.xyz]] 
 + 
 +**Contournement 1 :** 
 +  * Désactiver tous les fichiers /​boot/​grub/​grub.cfg de toutes les distributions installées en les renommant en grub.cfg.old 
 +  * Mettre à jour Grub : sudo update-grub 
 +Cette méthode est rapide mais sera potentiellement annulée lors des prochaines mis à jour de grub dans les autres distributions 
 + 
 + 
 +**Contournement 2 :** 
 +  * Suivre la procédure de [[https://​www.debian-fr.xyz/​viewtopic.php?​p=19308&​sid=da9eb6e3aad192a4fa05af4d4443c293#​p19308|Plus ce post de www.debian-fr.xyz]]
  
-Une autre solution est de modifier le disque de démarrage dans le BIOS pour démarrer sur le disque où se trouve votre Ubuntu. 
-Plus de détails dans [[http://​forum.ubuntu-fr.org/​viewtopic.php?​id=351117|ce sujet du forum]]. 
  
 ====Utilisation du clavier freeze Grub-PC ==== ====Utilisation du clavier freeze Grub-PC ====
Ligne 170: Ligne 319:
 **Origine** :​ incompatibilité de GrUB-PC et de la gestion de l’USB par certains BIOS (Pheonix KAM 1.60 ?) **Origine** :​ incompatibilité de GrUB-PC et de la gestion de l’USB par certains BIOS (Pheonix KAM 1.60 ?)
  
-**Solution** :​ entrer dans les options de BIOS (presser F2 pendant l'​affichage du BIOS sur les Compaq 21xx), et désactiver l’option ​« Prise ​en charge USB léguée ». Sauvegarder et redémarrer.+**Solution** :​ entrer dans les options de BIOS (presser F2 pendant l'​affichage du BIOS sur les Compaq 21xx), et désactiver l’option ​de prise en charge ​« USB legacy». Sauvegarder et redémarrer.
 Le démarrage ne devrait plus bloquer. Le démarrage ne devrait plus bloquer.
 <​note>​La désactivation de cette option n’a pas d'​influence sur l’utilisation des ports USB par la suite.</​note>​ <​note>​La désactivation de cette option n’a pas d'​influence sur l’utilisation des ports USB par la suite.</​note>​
  
 ==== Grub attend pour rien après un petit crash serveur ==== ==== Grub attend pour rien après un petit crash serveur ====
 +
 Problème gênant quand le dit serveur n’a pas de clavier/​écran. Problème gênant quand le dit serveur n’a pas de clavier/​écran.
  
Ligne 184: Ligne 334:
  
 ==== Apparition d’images au boot ==== ==== Apparition d’images au boot ====
 +
 Certains noyaux affichent une image lors du chargement du système (manchot, tux…). Une image est générée par processeur que possède la machine (l’HyperThreading sur les processeurs Intel double ce nombre). Certains noyaux affichent une image lors du chargement du système (manchot, tux…). Une image est générée par processeur que possède la machine (l’HyperThreading sur les processeurs Intel double ce nombre).
  
Ligne 194: Ligne 345:
  
 ====Via un CD-Live ou USB-Live==== ====Via un CD-Live ou USB-Live====
 +
 Possible que vous obteniez cette erreur : <code bash>/​usr/​sbin/​grub-probe:​ error: failed to get canonical path of /​cow.</​code>​ ou <​code>​impossible d'​obtenir le chemin canonique de "/​cow"</​code>​ Possible que vous obteniez cette erreur : <code bash>/​usr/​sbin/​grub-probe:​ error: failed to get canonical path of /​cow.</​code>​ ou <​code>​impossible d'​obtenir le chemin canonique de "/​cow"</​code>​
  
Ligne 212: Ligne 364:
  
 ==== Error: diskfilter writes are not supported ==== ==== Error: diskfilter writes are not supported ====
 +
 Si vous rencontrez au boot le message d'​erreur : "​Error:​ diskfilter writes are not supported"​ sur Ubuntu 14.10, récupérer le code du patch sur https://​bugs.debian.org/​754921 et l'​enregistrer dans le fichier "​00_header_754921.patch"​ (par exemple). Si vous rencontrez au boot le message d'​erreur : "​Error:​ diskfilter writes are not supported"​ sur Ubuntu 14.10, récupérer le code du patch sur https://​bugs.debian.org/​754921 et l'​enregistrer dans le fichier "​00_header_754921.patch"​ (par exemple).
  
Ligne 227: Ligne 380:
  
 Au prochain reboot, le message ne devrait plus apparaître. Au prochain reboot, le message ne devrait plus apparaître.
- 
  
 ===== Liens externes ===== ===== Liens externes =====
 +
   * [[http://​www.gnu.org/​software/​grub/​manual/​grub.html|Manuel grub-pc (en anglais)]]   * [[http://​www.gnu.org/​software/​grub/​manual/​grub.html|Manuel grub-pc (en anglais)]]
-  * [[http://​papy-tux.legtux.org/​doc1048/​index.php|Personnalisation de Grub]]+  ​* [[http://​tradinfo.e-monsite.com|Manuel GNU GRUB (en français)]] 
 +  * [[http://​papy-tux.legtux.org/​doc1192/​index.html|Personnalisation de Grub Partie 1]] 
 +  ​* [[http://​papy-tux.legtux.org/​doc1048/​index.html|Personnalisation de Grub Partie 2]]
   * [[http://​www.pixelbeat.org/​docs/​disk/​|Comprendre le fonctionnement de Grub avec quelques schémas (en anglais)]]   * [[http://​www.pixelbeat.org/​docs/​disk/​|Comprendre le fonctionnement de Grub avec quelques schémas (en anglais)]]
   * [[http://​www.it-connect.fr/​contourner-lauthentification-linux-en-editant-le-grub/​|Contourner l’authentification Linux en éditant le GRUB (fr)]]   * [[http://​www.it-connect.fr/​contourner-lauthentification-linux-en-editant-le-grub/​|Contourner l’authentification Linux en éditant le GRUB (fr)]]
Ligne 240: Ligne 395:
   * [[:​tutoriel:​grub2_lancer_des_images_iso|Tutoriel pour lancer des images iso directement depuis GRUB 2]].   * [[:​tutoriel:​grub2_lancer_des_images_iso|Tutoriel pour lancer des images iso directement depuis GRUB 2]].
   * [[:​tutoriel:​comment_recuperer_ubuntu_apres_installation_windows|Récupérer Ubuntu après installation de Windows]]   * [[:​tutoriel:​comment_recuperer_ubuntu_apres_installation_windows|Récupérer Ubuntu après installation de Windows]]
-  * [[:burg|BURG]] alternative graphique ​à grub qui n'est plus développée depuis 2011.+  * [[refind|rEFInd]], un chargeur de boot alternatif ​à Grub
  
 ---- ----
  • grub-pc.1488108028.txt.gz
  • Dernière modification: Le 26/02/2017, 12:20
  • par chamblard