User Tools

Site Tools


grub2

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

grub2 [2020/06/24 15:19] (current)
guy created
Line 1: Line 1:
 +====== Grub2 ======
 + 
 +Avec **Ubuntu 9.10**, un nouveau Grub apparaît, le **Grub2** qui correspond au paquet **grub-pc**. La configuration ne se fait plus par **/​boot/​grub/​menu.lst**,​ elle est élaborée maintenant par **/​etc/​default/​grub** et **/​boot/​grub/​grub.cfg**. ​
  
 +<note important>​
 +**Attention**. La convention de numérotation des partitions dans **grub-pc** a changé: celle des disques durs physiques démarre toujours de 0, mais celle des partitions commence à 1, à la différence de **grub-legacy** (l'​ancien grub).
 +Par exemple :
 +   * /dev/sda1 sera nommé hd(0,1) par grub-pc au lieu de hd(0,0) dans grub-legacy.
 +   * /dev/sdc5 sera nommé hd(2,5) par grub-pc au lieu de hd(0,4) dans grub-legacy.
 +</​note>​
 +
 +===== Configuration ====
 +
 +La configuration de Grub2 dépend de plusieurs fichiers.
 +
 +  * Fichier-mère utilisé par le système
 +    * **/​boot/​grub/​grub.cfg**,​ créé par update-grub,​ <​html><​font color="​red"​ ><​b>​il ne doit donc pas être modifié à la main</​b></​font></​html>​. Il est lu au démarrage comme l'​était menu.lst pour grub-legacy.
 +  * Fichiers utilisés pour la configuration automatique:​
 +    * **/​boot/​grub/​device.map**,​ donnant les disques sur lesquels update-grub cherchera une configuration d'​amorçage (le disque principal et la clé USB ayant servi à l'​installation d'​Ubuntu par exemple)
 +    * **/​etc/​default/​grub** gèrant les **valeurs par défaut** de grub (délai de lancement, résolution d'​affichage,​ splash/​quiet,​ options par défaut des nouveaux noyaux,..)
 +    * les fichiers du dossier **/​etc/​grub.d/​** qui sont des **scripts** dont les contenus se retrouvent dans l'​ordre de numérotation dans le fichier **/​boot/​grub/​grub.cfg** et qui sont éxécutés dans l'​ordre croissant:
 +      * **00_header** contient le script gérant les options définies dans **/​etc/​default/​grub**
 +      * **05_debian_theme** gère les couleurs du menu et le fond d'​écran éventuel
 +      * **10_linux** contient le script de lancement du système sur lequel on est
 +      * **20_memtest86+**
 +      * **30_os-prober** contient le script de recherche des autres systèmes installés
 +      * **40_custom** configuration personnelle. C'est l'​endroit où **paramétrer à la main** le lancement des systèmes d'​exploitation.
 +
 +
 +==== Configuration automatique ====
 +
 +la commande **update-grub** permet la mise à jour automatique du Grub.
 +<​file>​sudo update-grub</​file>​
 +Elle lit le contenu de ces fichiers un à un :
 +    - **/​boot/​grub/​device.map**
 +    - **/​etc/​default/​grub**
 +    - l'​ensemble des fichiers contenus à la racine du dossier **/​etc/​grub.d/​** pour générer automatiquement un nouveau **grub.cfg**.
 +
 +==== Configuration à la main ====
 +
 +<note important>​
 +Attention, prendre **au préalable** les précautions suivantes :
 +  * un fichier grub.cfg à jour en lançant un update-grub.
 +  * <​html>​créer une <font color="​red"​ <​b>​sauvegarde</​b></​font>​ </​html>​
 +<​file>​sudo cp /​boot/​grub/​grub.cfg /​boot/​grub/​grub.cfg.copy</​file>​
 +<​file>​sudo cp /​etc/​default/​grub /​etc/​default/​grub.copy </​file>​
 +<​file>​sudo cp -R /etc/grub.d /​etc/​grub.d.copy </​file>​
 +  * ne pas chercher à modifier directement grub.cfg (cela ne sert à rien, il est auto-généré)
 +</​note>​
 +
 +Avec Grub2, plusieurs fichiers peuvent néammoins être paramétrés:​
 +
 +  * **/​boot/​grub/​device.map**
 +On peut avoir besoin d'un update-grub, ​ si un périphérique est indiqué introuvable ou sa taille est impossible à définir. L'​erreur est due aux supports déclarés dans /​boot/​grub/​device.map. Deux possibilités:​
 +
 +**- 1.** éditer le fichier à la main
 +<​file>​gksu gedit /​boot/​grub/​device.map </​file>​
 +**- 2.** lancer la commande grub-mkdevicemap pour détecter les supports de stockage branchés:
 +<​file>​sudo grub-mkdevicemap </​file>​
 +
 +  * **/​etc/​default/​grub** (options par défaut)
 +Modifier (en mode administrateur) le fichier des valeurs par défaut de grub. Par exemple, sous Gnome, saisir la commande suivante dans un terminal: <​file>​gksu gedit /​etc/​default/​grub </​file>​
 +    * GRUB_DEFAULT=0 correspond au menu qui sera sélectionné **par défaut** (0 = le premier, 1 = le deuxième etc… On peut mettre aussi "​saved"​ pour la dernière entrée enregistrée).
 +    * GRUB_DEFAULT="​xxxx"​ Entrée de menu exacte. Exemple: GRUB_DEFAULT="​Ubuntu,​ avec Linux 2.6.32-22-generic-pae"​
 +    * #​GRUB_HIDDEN_TIMEOUT=0,​ le commentaire "#"​ sera enlevé si on veut **cacher** l'​affichage du menu (cas où l'on n'a qu'un seul système sur le disque ou lorsque ce grub est lancé via un chainloader). La durée en secondes permettra d'​appuyer sur la touche ESCAPE pour voir le menu. Il semblerait que pour certains, ce soit la touche majuscule (shift) qui permette d'​obtenir ce menu.
 +    * GRUB_TIMEOUT=10 est la **durée en secondes de l'​affichage du menu** avant lancement du menu sélectionné par défaut.
 +    * GRUB_DISTRIBUTOR=""​ est la ligne qui définit la syntaxe des titres du menu (voir exemple plus loin)
 +    * GRUB_CMDLINE_LINUX_DEFAULT=""​ et GRUB_CMDLINE_LINUX=""​ sont des comportements prédéfinis qui affecteront le lancement des systèmes d'​exploitation détectés automatiquement.
 +
 +<​note>​A l'​issue des changements,​ ne pas oublier de faire la mise à jour pour regénérer le fichier /​boot/​grub/​grub.cfg:​
 +<​file>​sudo update-grub</​file>​
 +</​note>​
 +
 +=== Ajout d'une entrée ===
 +
 +Pour rajouter une entrée manuellement dans le menu de démarrage, deux solutions.
 +
 +== Solution 1: Utiliser le fichier 40_custom ==
 +
 +Ajouter les 3 lignes **impérativement** à la fin du fichier existant (exemple ici, Win XP):
 +
 +<​code>#​!/​bin/​sh
 +exec tail -n +3 $0
 +# This file provides an easy way to add custom menu entries. ​ Simply type the
 +# menu entries you want to add after this comment. ​ Be careful not to change
 +# the 'exec tail' line above.
 +
 +menuentry "​Windows XP" {
 +        set root=(hd0,​1)
 +        chainloader +1
 +}
 +</​code>​
 +
 +Après génération de grub.cfg, on retrouve alors:
 +
 +<​code>​
 +### BEGIN /​etc/​grub.d/​40_custom ###
 +# This file provides an easy way to add custom menu entries. ​ Simply type the
 +# menu entries you want to add after this comment. ​ Be careful not to change
 +# the 'exec tail' line above.
 +menuentry "​Windows XP" {
 +        set root=(hd0,​1)
 +        chainloader +1
 +}
 +### END /​etc/​grub.d/​40_custom ###
 +</​code>​
 +
 +== Solution 2: créer un autre script ==
 +
 +Sachant que son emplacement dans le menu dépendra du préfixe numérique à deux chiffres attribué. Attention, le préfixe minimum est 06.
 +
 +Par exemple, on veut rajouter une entrée Windows entre les entrées du système GNU/Linux et les entrées memtest. Les premières sont dans un script portant le préfixe 10 et les deuxièmes 20. On peut donc créer un script ayant pour nom 11_windows, par exemple (entre 11 à 19 inclus). Reste à régler la question du contenu. On peut entrer la même chose que dans l'​exemple avec le fichier 40_custom, seulement, il faut que ce fichier soit un script et non pas un simple texte. Il suffit donc de s'​inspirer du fichier 40_custom. Il faut absolument mettre dans l'​en-tête du script, les lignes suivantes :
 +
 +<​code>​
 +#!/bin/sh
 +exec tail -n +3 $0
 +</​code>​
 +
 +Après, il reste à ajouter à la main les entrées, c'est à dire ici:
 +
 +<​code>#​!/​bin/​sh
 +exec tail -n +3 $0
 +menuentry "​Windows 7" {
 +        set root=(hd0,​1)
 +        chainloader +1
 +}
 +</​code>​
 +
 +Ce qui génère dans le fichier grub.cfg :
 +
 +<​code>###​ BEGIN /​etc/​grub.d/​11_windows ###
 +menuentry "​Windows 7" {
 +        set root=(hd0,​1)
 +        chainloader +1
 +}
 +### END /​etc/​grub.d/​11_windows ###
 +</​code>​
 +
 +Après avoir créé ce script, ne pas oublier pas de lui donner la permission d'​exécution **avant de générer** le fichier grub.cfg:
 +<​file>​sudo chmod +x 11_windows</​file>​
 +<​file>​sudo update-grub</​file>​
 +
 +
 +=== Sélection d'un OS par défaut ===
 +
 +  * Saisir la commande suivante dans un terminal avec un chiffre à la place du x (0 = le premier, 1 = le deuxième etc...)
 +<​file> ​ sudo grub-set-default x </​file>​
 +
 +  * Ou alors, éditer le fichier **/​etc/​default/​grub** et choisir parmi les possibilités suivantes pour la variable **GRUB_DEFAULT=**
 +    * un chiffre (0 = le premier, 1 = le deuxième etc...),
 +    * "​saved"​ (avec les guillemets) pour celui qui a été sélectionné lors du précédent lancement,
 +    * ou le titre exact d'un menu mis entre guillemets (par exemple : "​Microsoft Windows XP (on /​dev/​sda1)"​)
 +    * finir par
 +<​file>​sudo update-grub </​file>​
 +
 +
 +
 +==== Changer l'​ordre du Grub ====
 +
 +  * Éditer le fichier **/​boot/​grub/​grub.cfg.copy** créé en sauvegarde et le fichier **/​etc/​grub.d/​40_custom**:​
 +<​file>​gksu gedit /​boot/​grub/​grub.cfg.copy /​etc/​grub.d/​40_custom </​file>​
 +
 +Copier à partir du **grub.cfg.copy** toutes les lignes entre
 +
 +<​code>###​ BEGIN /​etc/​grub.d/​30_os-prober ###
 +et
 +### END /​etc/​grub.d/​30_os-prober ###
 +</​code>​
 +
 +  * Coller le tout dans le fichier **40_custom**. ​
 +    *Modifier ensuite les paramètres selon le but recherché
 +    * Enregistrer sous le nom **grub.d/​07_custom**.
 +
 +  * Après son enregistrement,​ on le rend exécutable par: 
 +<​file>​sudo chmod +x /​etc/​grub.d/​07_custom </​file>​
 +
 +  * Pour rendre effective la modification du Grub, lancer ensuite la commande:
 +<​file>​sudo update-grub </​file>​
 +
 +  * En finale, le nouveau Grub entrera en vigueur au prochain démarrage.
 +
 +==== Nombre de noyaux affichés ====
 +
 +En attendant la rédaction du paragraphe, consulter ​
 +
 +http://​doc.ubuntu-fr.org/​grub-pc-annexe#​faire_apparaitre_un_nombre_fixe_de_noyaux_du_systeme_en_cours
 +
 +===== Grub2 Erreur 15 =====
 +
 +Pour réparer le Grub2 suite à erreur 15, suivre la procédure suivante:
 +
 +    * démarrer en LiveCD ​
 +    * lancer les commandes suivantes en terminal:
 +
 +<​code>​sudo fdisk -l                      # pour identifier la partition-racine (si besoin, ouvrir Gparted)
 +sudo mount /dev/sdaX /mnt          # monter la bonne partition (remplacer le X par le bon numéro)
 +sudo mount --bind /dev /​mnt/​dev ​   # lien symbolique du dossier /dev en cours d'​utilisation vers le disque monté
 +sudo mount -t proc /proc /mnt/proc # lien pour que Grub2 trouve /​proc/​mounts
 +sudo chroot /mnt                   # mise à la racine du disque monté
 +apt-get install grub-pc ​           # installation du logiciel Grub2 (sur le disque chrooté à la racine)
 +update-grub ​                       # crée un nouveau fichier de configuration : grub.cfg
 +grub-install /​dev/​sda ​             # installation de grub sur le MBR
 +</​code>​
 +
 +Ensuiteà, sortir du disque monté par Ctl+D. Puis, démonter ce disque :
 +
 +<​code>​sudo umount /mnt/dev
 +sudo umount /mnt/proc
 +sudo umount /mnt
 +</​code>​
 +
 +Redémarrer,​ la réparation est faite. ​
 +
 +===== StartupManager =====
 +
 +**StartupManager** apporte une solution graphique à ces problèmes. Trés simple d'​emploi et compatible **grub-legacy** et **grub2**. Pour l'​installer,​ cliquer sur le lien **[[apt://​startupmanager]]**. Pour le lancer, faire **Système/​Administration/​Gestionnaire d'​Amorçage StartupManager**.
 +
 +StartupManager permet de changer des paramétres suivants: choix de l'OS, délai de lancement et affichage.
 +
 +{{startup_manager.png|}}
 +
 +
 +Si on change la priorité au démarrage, le menu du grub ne change pas, mais la sélection **par défaut** se met sur l'OS par défaut.
 +
 +===== Réinstallation Grub2 =====
 +
 +En cas de besoin, on peut avoir à réinstaller le Grub2 (après déplacement de la partition-racine,​ par exemple).
 +
 +==== Méthode 1 ====
 +
 +Le plus simple est de restaurer les fichiers Grub2 à partir d'un LiveCD.
 +  * Démarrer en **LiveCD** (Ubuntu 9.10 minimum)
 +  * Ouvrir un terminal
 +  * Repérer les partitions avec l'une des deux commandes :
 +<​file>​sudo fdisk -l </​file>​
 +<​file>​sudo blkid </​file>​
 +  * Si les partitions sont trop nombreuses et difficiles à identifier, utiliser **Gparted**
 +  * Monter la partition-racine Ubuntu installée en /mnt
 +<​file>​sudo mount /dev/sdXY /mnt  # exemple /dev/sda5 si la racine est en sda5</​file>​
 +**Cas particulier**:​ pour une  partition /boot séparée, changer le point de montage pour /mnt/boot.
 +  * Lancer la commande grub-install pour réinstaller les fichiers Grub2 sur la racine montée et sur le MBR du disque désigné.
 +<​file>​sudo grub-install --root-directory=/​mnt/​ /​dev/​sdX ​ # exemple /dev/sda pour le disque sda</​file>​
 +  * Redémarrer en normal.
 +  * Mettre à jour le menu Grub2 par **update-grub** :
 +<​code>​sudo update-grub
 +[sudo] password for xxx: 
 +Generating grub.cfg ...
 +Found linux image: /​boot/​vmlinuz-2.6.31-16-generic-pae
 +Found initrd image: /​boot/​initrd.img-2.6.31-16-generic-pae
 +Found memtest86+ image: /​boot/​memtest86+.bin
 +Found Microsoft Windows XP Professionnel on /dev/sda1
 +done </​code>​
 +
 +==== Méthode 2. ==== 
 +Copie des fichiers Grub2 à partir de la partition-racine.
 +
 +  * Démarrer en **LiveCD**
 +
 +  * Monter la partition-racine à partir du menu **Raccourcis/​Poste de travail**. On peut s'​aider de Gparted pour l'​identifier
 +
 +  * Déterminer le chemin UUID du point de montage grâce à **Gparted**. ​
 +
 +  * Sélectionner la partition, clic droit/​Information information,​ on obtient le point de montage et l'UUID des partitions.
 +
 +{{info_gparted.png|}}
 +
 +  * Ouvrir un Terminal pour utiliser ensuite la commande "​grub-setup -d" pour réinstaller les fichiers Grub2 au bon endroit de la partition-racine et sur le MBR
 +   
 +  * Faire un copier-coller de l'UUID pour entrer la commande suivante:
 +<​file>​sudo grub-setup -d /​media/​XXXX/​boot/​grub /​dev/​sda ​ # où XXXX est l'​UUID ​ et sda est le disque</​file>​
 +Exemple:
 +
 +sudo grub-setup -d /​media/​**bcfb36ef-5ec4-4108-9c3f-ef15cc4f1039**/​boot/​grub /​dev/​**sda**
 +
 +En cas de message //"​error:​ Cannot open /​boot/​grub/​device.map//",​ ajouter l'​option **-m** avec le chemin du device.map
 +<​file>​sudo grub-setup -d /​media/​XXXXX/​boot/​grub -m /​media/​XXXXX/​boot/​grub/​device.map /dev/sda </​file>​
 +Exemple:
 +
 +<​code>​sudo grub-setup -d /​media/​bcfb36ef-5ec4-4108-9c3f-ef15cc4f1039/​boot/​grub -m /​media/​bcfb36ef-5ec4-4108-9c3f-ef15cc4f1039/​boot/​grub/​device.map /dev/sda </​code>​
 +
 +  * Redémarrer
 +
 +  * Mettre à jour le menu Grub2 par **sudo update-grub**
 +
 +==== Méthode 3 ====
 +
 +S'il n'y a plus Grub2 suite à l'​installation d'un autre système d'​exploitation,​ suivre les étapes ci-après :
 +
 +   * Démarrer en **LiveCD** (Ubuntu 9.10 minimum)
 +
 +   * **Monter la partition** qui contenait GRUB 2 auparavant. Cette partition est généralement la même qui contient tout le système Ubuntu. Dans une session d'​essai d'​Ubuntu,​ aller dans le menu Raccourcis et sélectionner la partition à monter dans la liste des partitions existantes.
 +<​file>​sudo mount /dev/sdXY /mnt  # exemple /dev/sda5 si la racine est en sda5</​file>​
 +
 +   * Aller dans **Système/​Administration/​Utilitaire de disques**, noter les identifiants suivants:
 +         * noter l'​**identifiant** de périphérique du disque dur primaire - « Périphérique », en haut à droite - (généralement /dev/sda),
 +         * après avoir cliqué sur la partition Linux principale, qui contenait GRUB 2 et qui a été montée, noter le **nom de montage** de la partition - « Point de montage », en bas à droite - (par exemple /mnt/sda6).
 +
 +{{utilitaire-disque.png|}}
 +
 +   * Dans un terminal, lancer la commande suivante en remplaçant "/​mnt/"​ et /dev/sda par le point de montage et le périphérique notés précédemment ​ :
 +
 +<​file>​sudo grub-install --root-directory=/​mnt/​ /dev/sda </​file>​
 +
 +   * Redémarrer en normal
 +
 +==== Vérification ====
 +
 +Pour vérifier le fichier grub.cfg tel qu'il existe suite à des modifications diverses, sans redémarrer Ubuntu, entrer la commande
 +<​file>​sudo grub-mkconfig </​file> ​
 +
 +===== OS présents =====
 +
 +Pour rechercher les autres OS présents sur la machine et les rajouter au GRUB automatiquement,​ on peut utiliser le logiciel **OS-prober**.
 +
 +Pour cela,
 +  * cliquer ici: **[[apt://​os-prober]]** pour l'​installer
 +  * entrer les commandes suivantes:
 +<​file>​
 +sudo os-prober
 +[sudo] password for guy: 
 +/​dev/​sda1:​Microsoft Windows XP Professionnel:​Windows:​chain
 +/​dev/​sda2:​Microsoft Windows XP Professionnel:​Windows1:​chain
 +/​dev/​sda6:​Ubuntu 9.04 (9.04):​Ubuntu:​linux
 +/​dev/​sda7:​Ubuntu 9.10 (9.10):​Ubuntu1:​linux
 +/​dev/​sda8:​Ubuntu 9.10 (9.10):​Ubuntu2:​linux</​file>​
 +<​file>​sudo update-grub </​file>​
 +
 +===== Mode Rescue =====
 +
 +On peut, en cas de problème Grub, se retrouver en mode Rescue. On le reconnaît avec le prompt suivant:
 +<​code>​grub rescue> ​ </​code>​
 +<​note>​Le clavier se trouve alors en QWERTY </​note>​
 +Les commandes supplémentaires suivantes sont disponibles:​
 +
 +^ **Commande** ^ **Action** ^
 +| dump | Nettoyage de la mémoire |
 +| exit | Sortie de GRUB 2 |
 +| normal | Retour au mode normal "​grub>"​ si possible |
 +
 +Les commandes suivantes sont disponibles en mode rescue du grub:\\
 +boot,    cat,   ​chainloader, ​   dump,    exit,    freebsd, ​   freebsd_loadenv, ​
 +freebsd_module, ​   help,    initrd, ​   insmod, ​  ​linux, ​   lsmod, ​   multiboot,
 +normal, ​   rmmod, ​   set,    unset
 +
 +Au prompt **grub rescue**, suivre les indications suivantes pour essayer de redémarrer sur le dernier kernel.
 +
 +^ Commande/​Réponse ​ ^ Action ^
 +| ls | Affiche les disques et partitions connues. L'​utilisateur doit déterminer où est installé le système pour la suite. Mieux vaut l'​avoir noté auparavant |
 +| set root=(hdX,​Y) | où X est le n° du disque (commençant à 0) et Y la partition (commençant à 1). Exemple: (hd3,5) correspond à sdc5) |
 +| set | Normalement,​ récupère tout seul la désignation de la racine, sinon, entrer la commande suivante: |
 +| set prefix=(hdX,​Y)/​boot/​grub | En cas d'​erreur,​ des erreurs "no such disk" ou "not found" apparaitront plus tard |
 +| ls /boot | Inspecter le contenu. On y trouve les différents kernels, images initrd et répertoire grub. Si ce n'est pas le cas, utiliser la commande ls pour chercher sur le disque. Si nécessaire,​ désigner un autre disque comme racine |
 +| insmod /​boot/​grub/​linux.mod | Charge le module Linux. Sans lui, le message "​Unknown command linux" apparaîtra au chargement du kernel |
 +| linux /vmlinuz root=/​dev/​sdXY ro | Charge le noyau kernel. Mettre les bonnes désignations pour mettre "​X"​ and "​Y"​. Il y aura ensuite une annonce du chargement correct |
 +| initrd /initrd.img | Charge l'​image initrd. Un message peut apparaître dans le terminal |
 +| boot | Charge l'​image initrd. Un message peut apparaître dans le terminal |
 +
 +Après un redémarrage réussi, il faut,
 +  * soit, réinstaller Grub2 (sudo grub-install /dev/sdX)
 +  * soit, éditer les fichiers de configurations Grub2 et y faire les changements nécessaires.
 +
 +<​note>​Si le grub rescue ne marche pas, faire une réinstallation Gub2 (Méthode 1 ou 2) </​note>​
 +
 +==== Boot Info Script ====
 +
 +On peut parfois avoir besoin de plus d'​informations sur les partitions ou Grub, installer **Boot Info Script** à télécharger sur http://​bootinfoscript.sourceforge.net/​. Lancer le script, les résultats sont dans le fichier /​home/<​login>/​Téléchargements/​RESULTStxt.
 +<​code>​
 +              Boot Info Script 0.55    dated February 15th, 2010                    ​
 +
 +============================= Boot Info Summary: ==============================
 +
 + => Grub 2 is installed in the MBR of /dev/sda and looks on the same drive in 
 +    partition #7 for /boot/grub.
 + => Grub 2 is installed in the MBR of /dev/sdb and looks on the same drive in 
 +    partition #5 for /boot/grub.
 +
 +sda1: _________________________________________________________________________
 +
 +    File system: ​      ntfs
 +    Boot sector type:  Grub 2
 +    Boot sector info:  Grub 2 is installed in the boot sector of sda1 and 
 +                       looks at sector 202082064 of the same hard drive for 
 +                       ​core.img,​ but core.img can not be found at this 
 +                       ​location. No errors found in the Boot Parameter Block.
 +    Operating System: ​ Windows XP
 +    Boot files/​dirs: ​  /​boot.ini /ntldr /​NTDETECT.COM
 +
 +sda2: _________________________________________________________________________
 +
 +    File system: ​      swap
 +    Boot sector type:  -
 +    Boot sector info:  ​
 +
 +sda3: _________________________________________________________________________
 +
 +    File system: ​      ​Extended Partition
 +    Boot sector type:  -
 +    Boot sector info:  ​
 +
 +...
 +</​code>​
 +
 +===== Suppression Grub2 =====
 +
 +**Grub2**, arrivé avec Ubuntu 9.10, totalement différent de la version précèdente,​ peut surprendre, il nécessite de s'y adapter (voir § [[grub2#​confuguration|Configuration]] plus haut). Si on préfère le supprimer pour prendre un peu de recul, il faut désinstaller les 2 paquets **grub2** et **grub-pc** en suivant la procèdure suivante traduite de l'​Anglais (voir plus bas [[grub2#​documentation|Documentation]]).
 +
 +Pour retourner à l'​ancien Grub, dit GRUB-legacy (0.97), il faut donc supprimer le GRUB 2 et installer GRUB.
 +
 +La ligne de commande est recommandée,​ bien que cette procèdure pourrait être réalisée avec Synaptic. Mais de toute façon, certaines opếrations ne peuvent se faire qu'en ligne de commande.
 +
 +  * Ouvrir un terminal: **Applications/​Accessories/​Terminal**.
 +
 +  * Faire une copie des principaux dossiers et fichiers de Grub2 (optionnel).
 +
 +<​file>​sudo cp /​etc/​default/​grub /​etc/​default/​grub.old</​file>​
 +
 +<​file>​sudo cp -R /etc/grub.d /​etc/​grub.d.old</​file>​
 +
 +<​file>​sudo cp -R /boot/grub /​boot/​grub.old</​file>​
 +
 +     * Supprimer Grub 2
 +
 +<​file>​sudo apt-get purge grub2 grub-pc</​file>​
 +
 +<​note>​Le système devient unbootable provisoirement jusqu'​à remplacement par un autre grub </​note>​
 +
 +   * Bien que les paquets soient supprimés, il restera encore nombre de fichiers dans /boot/grub.
 +
 +   * Installer le Grub. 
 +
 +<​file>​sudo apt-get install grub  </​file>​
 +
 +Après l'​installation du paquet grub, l'​utilisateur doit encore créer le **menu.lst** et **stage1/​stage2** avec les deux commandes suivantes:
 +
 +<​file>​sudo update-grub ​ # qui génère menu.lst. Taper "​Yes"​ en réponse à la demande</​file>​
 +
 +<​file>​sudo grub-install /​dev/​sdX ​ # choisir le bon disque (sda, sdb, etc), celui où il y a Ubuntu </​file>​
 +
 +Ce qui crée les fichiers stage1 et stage2 dans **/​boot/​grub** et écrit sur le MBR. 
 +
 +   * Redémarrer.
 +
 +===== Documentation =====
 +
 +Cette page a été rédigée par compilation des documents suivants:
 +
 +- http://​doc.ubuntu-fr.org/​grub-pc
 +
 +- http://​grub.enbug.org/​OptionsDeGrub.
 +
 +- http://​www.benlaug.com/​node/​37
 +
 +- https://​help.ubuntu.com/​community/​Grub2
 +
 +- http://​grub.enbug.org/​FrenchFrontPage
 +
 +- http://​www.linuxpedia.fr/​doku.php/​expert/​grub2
grub2.txt · Last modified: 2020/06/24 15:19 by guy