Comment puis-je réparer grub? (Comment récupérer Ubuntu après l'installation de Windows?)

303

J'ai installé Windows 7, qui a mangé le fichier de démarrage d'Ubuntu. Au démarrage de l'ordinateur, il passe maintenant directement à Windows, sans me donner la possibilité de démarrer Ubuntu.

Comment puis-je récupérer Ubuntu?

    
posée Salahuddin 17.12.2011 - 08:02
la source

11 réponses

310

Lorsque vous installez Windows, Windows suppose qu’il s’agit du seul système d’exploitation (OS) de la machine ou qu’il ne tient pas compte de Linux. Il remplace donc GRUB par son propre chargeur de démarrage. Ce que vous devez faire est de remplacer le chargeur de démarrage Windows par GRUB. J'ai vu diverses instructions pour remplacer GRUB en lançant des commandes GRUB ou autres, mais pour moi, le plus simple est de simplement chroot dans votre installation et d'exécuter update-grub . chroot est génial car il vous permet de travailler sur votre installation réelle, au lieu d'essayer de rediriger les choses ici et là. C'est vraiment propre.

Voici comment:

  1. Démarrez à partir du CD live ou de l’USB en direct, en mode "Try Ubuntu".
  2. Déterminez le numéro de partition de votre partition principale. sudo fdisk -l , sudo blkid ou GParted (qui devrait déjà être installé, par défaut, sur la session en direct) peut vous aider ici. Je vais supposer dans cette réponse que c'est /dev/sda2 , mais assurez-vous d'utiliser le bon numéro de partition pour votre système!

    Si votre partition principale se trouve dans un LVM , le périphérique sera plutôt situé dans /dev/mapper/ , probablement /dev/mapper/{volume}--{os}-root{volume} correspond au nom du volume LVM et {os} est le système d'exploitation. Exécutez ls /dev/mapper pour le nom exact.

  3. Montez votre partition:

    sudo mount /dev/sda2 /mnt  #Replace sda2 with the partition from step 2
    

    Si vous avez des partitions /boot , /var ou /usr séparées , répétez les étapes 2 et 3 pour monter ces partitions dans /mnt/boot , /mnt/var et /mnt/usr respectivement. . Par exemple,

    sudo mount /dev/sdXW /mnt/boot
    sudo mount /dev/sdXY /mnt/var
    sudo mount /dev/sdXZ /mnt/usr
    

    remplacer sdXW , sdXY et sdXZ par les numéros de partition respectifs.

  4. Lier monter d’autres choses nécessaires:

    for i in /sys /proc /run /dev; do sudo mount --bind "$i" "/mnt$i"; done
    
  5. Si Ubuntu est installé en mode EFI ( voir cette réponse si vous n’êtes pas certain de ), utilisez sudo fdisk -l | grep -i efi ou GParted pour trouver votre partition EFI. Il aura une étiquette de EFI . Montez cette partition en remplaçant sdXY par le numéro de partition réel de votre système:

    sudo mount /dev/sdXY /mnt/boot/efi
    
  6. chroot dans votre installation Ubuntu:

    sudo chroot /mnt
    
  7. À ce stade, vous êtes dans votre installation, pas dans la session en direct, et en tant qu'utilisateur root. Update grub:

    update-grub
    

    Si vous rencontrez des erreurs ou si vous ne parvenez pas à résoudre l’étape 7, passez à l’étape 8. (Sinon, c’est facultatif.)

  8. Selon votre situation, vous devrez peut-être réinstaller grub:

    grub-install /dev/sda
    update-grub # In order to find and add windows to grub menu.
    
  9. Si Ubuntu est installé en mode EFI et que l’UUID de partition EFI a été modifié, vous devrez peut-être le mettre à jour dans /etc/fstab . Comparez-le:

    blkid | grep -i efi
    grep -i efi /etc/fstab
    

    Si l’UUID de la partition EFI actuelle (de blkid ) diffère de celui de /etc/fstab , mettez à jour /etc/fstab avec l’UUID actuel.

  10. Si tout fonctionnait sans erreurs, vous êtes tous ensemble:

    exit
    sudo reboot
    
  11. À ce stade, vous devriez pouvoir démarrer normalement.

Si vous ne parvenez pas à démarrer normalement et n’a pas effectué l’étape 8 car il n’y avait pas de message d’erreur, réessayez à l’étape 8.

  • Parfois, donner à GRUB2 la bonne configuration pour vos partitions ne suffit pas, et vous devez l’installer (ou le réinstaller) dans le Master Boot Record, ce que fait l’étape 8. L'expérience acquise auprès des utilisateurs dans la discussion a montré que l'étape 8 est parfois nécessaire même si aucun message d'erreur n'est affiché.
réponse donnée Scott Severance 17.12.2011 - 13:23
la source
91

Le programme d’installation de Windows ne s’intéresse pas aux autres systèmes d’exploitation du système. Il écrit donc son propre code sur l'enregistrement de démarrage principal. Heureusement, la solution est facile aussi.

Vous devez réparer le MBR. Faites ce qui suit

Démarrez en utilisant un USB / CD live de Ubuntu. Utilisez boot-repair pour résoudre le problème.

Après avoir démarré avec live usb / cd, exécutez la commande suivante dans le terminal:

sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt-get update
sudo apt-get install -y boot-repair && boot-repair

Utilisez Recomended Repair .

Plus d'informations - lien

    
réponse donnée Web-E 01.09.2012 - 08:59
la source
33

Je n'ai jamais eu de problème en utilisant ces instructions:
lien

Tout d’abord, vous devez démarrer votre système à partir d’un CD live. Alors

  

METHOD 3 - CHROOT

     

Cette méthode d’installation utilise la commande chroot pour accéder à   les fichiers du système cassé. Une fois la commande chroot émise, le   LiveCD traite le système cassé / comme le sien. Les commandes s'exécutent dans un   environnement chroot affectera les systèmes de fichiers de systèmes cassés et non   ceux du LiveCD.

     
  1. Démarrez sur le bureau LiveCD (Ubuntu 9.10 ou ultérieur). Veuillez noter que le Live CD doit être identique au système que vous corrigez - soit   32 bits ou 64 bits (sinon, le chroot échouera).

  2.   
  3. Ouvrez un terminal (Applications & gt; Accessoires & gt; Terminal).

  4.   
  5. Déterminez votre partition système normale - (le commutateur est une minuscule "L")

    sudo fdisk -l
    
         

    Si vous n’êtes pas sûr, lancez

    df -Th  
    
         

    Recherchez la taille de disque correcte et le format ext3 ou ext4.

  6.   
  7. Montez votre partition système normale:

         

    Remplacez la partition correcte: sda1, sdb5, etc.

    sudo mount /dev/sdXX /mnt  
    
         

    Exemple: sudo mount /dev/sda1 /mnt

  8.   
  9. Seulement si vous avez une partition de démarrage distincte:   sdYY est la désignation de la partition / boot (par exemple sdb3)

    sudo mount /dev/sdYY /mnt/boot
    
  10.   
  11. Montez les systèmes de fichiers virtuels critiques:

    sudo mount --bind /dev /mnt/dev
    sudo mount --bind /dev/pts /mnt/dev/pts
    sudo mount --bind /proc /mnt/proc
    sudo mount --bind /sys /mnt/sys
    
  12.   
  13. Chroot dans votre périphérique système normal:

    sudo chroot /mnt
    
  14.   
  15. S'il n'y a pas de /boot/grub/grub.cfg ou si ce n'est pas correct, créez-en un en utilisant

    update-grub
    
  16.   
  17. Réinstallez GRUB 2:

         

    Remplacez le bon périphérique - sda, sdb, etc. Ne spécifiez pas de numéro de partition.

    grub-install /dev/sdX
    
  18.   
  19. Vérifiez l'installation (utilisez le bon périphérique, par exemple sda. Ne spécifiez pas de partition):

    sudo grub-install --recheck /dev/sdX
    
  20.   
  21. Quittez chroot: CTRL-D sur le clavier

  22.   
  23. Démontez les systèmes de fichiers virtuels:

    sudo umount /mnt/dev/pts
    sudo umount /mnt/dev
    sudo umount /mnt/proc
    sudo umount /mnt/sys
    
  24.   
  25. Si vous avez monté une partition distincte / boot:

    sudo umount /mnt/boot
    
  26.   
  27. Démontez le répertoire / usr du LiveCD:

    sudo umount /mnt/usr
    
  28.   
  29. Démontez le dernier périphérique:

    sudo umount /mnt
    
  30.   
  31. Redémarrer.

    sudo reboot
    
  32.   
    
réponse donnée desgua 27.04.2012 - 04:15
la source
18

Démarrer depuis une clé USB ou un CD Ubuntu en direct et
Installer la réparation de démarrage sur Ubuntu en suivant les étapes

Ouvrez le terminal et exécutez les commandes suivantes

sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt-get update
sudo apt-get install boot-repair

Après avoir terminé l’installation, vous pouvez le lancer depuis le menu System- & gt; Administration- & gt; Boot-Repair si vous utilisez Gnome, ou chercher "boot-repair" dans le tiret si vous utilisez Unity. Puis suivez les captures d'écran suivantes:

Méthode 1

  • Cliquez sur les options avancées

  • Cochez les options ci-dessous

  • Changez l’onglet en onglet Emplacement et cocher Grub Les options affichées dans la figure

Appuyez sur Appliquer et redémarrez le système

Méthode 2

  • Sélectionnez les options de réparation de démarrage recommandées, comme indiqué dans la première capture d'écran

Documentation:

    
réponse donnée Stormvirux 30.07.2013 - 21:25
la source
10

Installez simplement easyBCD dans Windows 7 et faites

Ajouter une nouvelle entrée & gt; Linux / BSD & gt; (sélectionnez) Grub2 & gt; (push) Ajouter une entrée

Vous pouvez ensuite choisir Ubuntu sur le chargeur de démarrage Windows 7 pour accéder à Grub2 (chargeur de démarrage précédent).

    
réponse donnée hamed 11.03.2012 - 23:09
la source
5

Il existe maintenant une solution plus simple:

  1. Redémarrez et entrez les options du BIOS de votre ordinateur (F2 ou parfois F11).
  2. Accédez au menu Boot , puis sélectionnez Priorité du périphérique de démarrage .
  3. Vérifiez si Gestionnaire de démarrage Windows est au-dessus du lecteur de démarrage principal (généralement Disque dur SATA ... ou Disque dur IDE ... ). Si tel est le cas, déplacez la priorité du disque de démarrage au-dessus de celle du gestionnaire de démarrage Windows.
  4. Enregistrez vos options BIOS et quittez (généralement F10).

Cela a été testé sur un ordinateur portable Samsung Series 7 Chronos à double amorçage Windows 8 et Ubuntu 13.10, démarrage sécurisé désactivé, UEFI et démarrage hérité activés.

    
réponse donnée scruss 15.12.2013 - 14:04
la source
2

Boot-Repair a fonctionné pour moi. C'est très très facile à utiliser une application graphique, vous n'avez pas besoin d'utiliser la ligne de commande, il suffit de cliquer sur un bouton:)

Toutes les options de réparation disponibles sont décrites dans la documentation Ubuntu et il existe un separate expliquant comment démarrer le programme d’amorçage (en créant un disque amorçable ou en l’installant sur un disque dur Ubuntu existant) et comment l’utiliser. / p>

Il suffit de démarrer un CD live Ubuntu, d'installer Boot-Repair et de l'exécuter.

    
réponse donnée lorenzo-s 18.12.2011 - 02:41
la source
1

Lorsque GRUB est cassé, l'utilisateur n'a généralement pas accès aux systèmes. La réparation doit donc être effectuée à partir d'une session en direct (live-CD ou live-USB).

Il existe de nombreuses causes possibles à une rupture GRUB: écriture sur le MBR, DRM empêchant GRUB de s’installer correctement, bogue du programme d’installation, modification du matériel ... La mise à jour de GRUB proposée initialement par Scott n'est généralement pas suffisante, la réinstallation de GRUB comme proposé par Marco est plus efficace, mais il y a encore plusieurs situations nécessitant d’autres ajustements (ajout d’options au noyau, affichage du menu GRUB, modification des options de GRUB ...). Une autre difficulté pour réparer GRUB est l'utilisation de chroot et le choix des partitions / disques appropriés.

Tout cela a été simplifié grâce à un petit outil graphique: Boot-Repair . Il doit être intégré dans le CD Ubuntu 12.04 pour une utilisation plus facile, mais pour les utilisateurs qui en ont besoin, il existe déjà des distributions qui l’intègrent: Ubuntu-Secured-Remix (CD Ubuntu intégrant la réparation), Boot-Repair-Disk Réparation au démarrage), ...

J'espère que ça aide.

    
réponse donnée LovinBuntu 20.12.2011 - 09:58
la source
1

Sur les systèmes EFI (tels que la plupart des systèmes livrés avec Windows 8 ou version ultérieure), Windows met parfois à jour son chargeur de démarrage ou le réinitialise pour qu’il devienne le chargeur de démarrage par défaut. Cela est particulièrement courant lors de la réinstallation du système d'exploitation ou de la mise à jour du système (mise à niveau vers la dernière version de Windows, par exemple). Notez qu'il est peu probable que Windows efface réellement les fichiers GRUB sur un ordinateur EFI. Tout ce qui est nécessaire pour démarrer Ubuntu est toujours en place. c'est juste être contourné. Dans ces cas, une réinstallation complète de GRUB est excessive et, en fait, cela risque fort de créer de nouveaux problèmes.

Par conséquent, au lieu de réinstaller GRUB dans ces cas, je vous recommande de réinitialiser GRUB (ou tout autre chargeur de démarrage ou gestionnaire de démarrage que vous préférez). Il y a plusieurs manières de faire cela, y compris:

  • EasyUEFI : le moyen le plus simple d’ajuster l’amorçage, si le système démarre directement sur Windows, est d’utiliser EasyUEFI, qui est un outil graphique tiers gratuit (pour la version de base) permettant de gérer la séquence d’amorçage EFI. C'est assez explicite - localisez l'entrée ubuntu dans la liste des options de démarrage et déplacez-la en haut de la liste. Au prochain redémarrage, GRUB devrait apparaître. (Si vous utilisez autre chose que GRUB, vous devrez localiser son entrée.)
  • bcdedit : l'outil Windows bcdedit peut être utilisé pour définir GRUB sur l'ordre de démarrage par défaut. La commande bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi , tapée dans une fenêtre d'invite de commandes Administrator , le fera; Cependant, si votre ordinateur démarre avec Secure Boot actif, bcdedit /set {bootmgr} path \EFI\ubuntu\shimx64.efi sera requis à la place. En fait, la dernière commande fonctionnera généralement même si Secure Boot n’est pas utilisé, alors j’utiliserai d’abord cette commande. Notez qu'il existe un outil shell Windows plus avancé qui nécessite une syntaxe légèrement différente de celle que j'ai présentée, mais je ne me souviens pas des détails.
  • Démarrage unique d'Ubuntu : la plupart des EFI fournissent un gestionnaire de démarrage intégré, accessible en appuyant sur une touche de fonction, sur Echap ou sur Entrée au début du processus de démarrage du système. Les chances sont que l'entrée ubuntu à démarrer Ubuntu apparaîtra dans ce menu du gestionnaire de démarrage, vous permettant de démarrer sur Ubuntu. Alternativement, vous pouvez démarrer sur un support d'urgence Ubuntu, comme le programme d'installation démarré en mode "essayez avant l'installation". Dans tous les cas, vous pouvez alors utiliser efibootmgr pour ajuster l'ordre de démarrage:
    1. Tapez sudo efibootmgr pour voir les entrées de démarrage.
    2. Notez la ligne BootOrder en cours.
    3. Localisez l’entrée pour ubuntu et notez son Boot#### number.
    4. Tapez sudo efibootmgr -o xxxx[,yyyy,zzzz,....] pour modifier la séquence de démarrage, ce qui fait de xxxx le nombre pour Ubuntu. Ce qui vient après n'est probablement pas très important, même si j'ai noté que Windows semble être susceptible de s'ajouter au début de la séquence de démarrage si elle ne figure pas dans la liste. Ainsi, vous devriez probablement vous assurer que Windows est dans la liste, et il peut être plus prudent de réorganiser la liste de sorte que toutes les entrées d'origine soient là, juste avec l'entrée ubuntu déplacée en haut de la liste. li>
  • Utilitaire de configuration du microprogramme : certains utilitaires de configuration d'EFI vous permettent d'ajuster l'ordre de démarrage. Les détails varient énormément d'un EFI à l'autre, donc je n'entrerai pas dans les détails, mais vous pourriez rechercher une telle option dans votre utilitaire d'installation.

Il existe d'autres variantes de ces procédures, telles que l'utilisation de bcfg dans un shell EFI, en utilisant bless dans macOS, à l'aide de mon rEFInd pour effectuer un démarrage ponctuel, etc. Je commencerais par EasyUEFI; ce sera probablement la solution la plus simple. Cependant, Windows insiste parfois pour se faire par défaut à chaque démarrage, et les rapports indiquent que bcdedit peut mieux gérer ce problème.

Notez qu'aucune des opérations précédentes ne s'applique aux installations en mode BIOS; Cependant, comme la plupart des ordinateurs livrés avec Windows 8 ou une version ultérieure démarrent en mode EFI, les installations en mode BIOS deviennent de plus en plus rares. Dans de nombreux cas, mieux vaut résoudre le problème plutôt que de réinstaller aveuglément GRUB.

    
réponse donnée Rod Smith 13.07.2017 - 17:03
la source
0

Windows ne voit pas les partitions au format Linux. Vous devez utiliser gparted à partir d'un liveCD et créer une partition primaire formatée NTFS avec l'indicateur de démarrage.

Certains ont rencontré des problèmes si la nouvelle partition principale se trouve après la partition étendue, car Windows ne réinitialise pas toujours la table de partition correctement. Mieux vaut avoir de bonnes sauvegardes et une sauvegarde distincte de la table de partition.

Sauvegarder la table de partition en fichier texte & amp; enregistrer sur un périphérique externe.

sudo sfdisk -d /dev/sda > PTsda.txt

Ceci est uniquement pour les systèmes MBR (msdos). Si votre installation Ubuntu se trouve dans le lecteur de partition GPT, vous pouvez uniquement installer Windows en mode UEFI ou convertir le lecteur en MBR (msdos).

    
réponse donnée oldfred 30.07.2013 - 22:01
la source
0

Seule la commande fsck a corrigé l'écran grub-rescue pour moi.

Utilisez Boot-Repair pour démarrer depuis Live-CD, puis ouvrez Terminal

Obtenez le bon périphérique:

sudo fdisk -l

Besoin de trouver le périphérique de démarrage, le périphérique de démarrage a * sous la catégorie de démarrage comme ici:

Device     Boot   Start       End   Sectors  Size Id Type
/dev/sda1          2048   2000895   1998848  976M 82 Linux swap / Solaris
/dev/sda2  *    2000896 943716351 941715456  449G 83 Linux

Maintenant, réparez le disque en utilisant:

sudo fsck /dev/sda2

Remarque: / dev / sda2 est le périphérique de démarrage dans cet exemple.

Entrez Y pour résoudre les problèmes

Après avoir entré Y environ 2 fois, vous pouvez arrêter le processus fsck en entrant CTRL + C , car la partie critique est déjà terminé.

Redémarrez. Fait.

    
réponse donnée Benny 25.07.2018 - 09:51
la source

Lire d'autres questions sur les étiquettes