J'ai installé Windows 7, qui a mangé le fichier de démarrage d'Ubuntu. Lorsque je démarre l'ordinateur, il va directement sur Windows, sans me donner la possibilité de démarrer Ubuntu.
Comment puis-je récupérer Ubuntu?
J'ai installé Windows 7, qui a mangé le fichier de démarrage d'Ubuntu. Lorsque je démarre l'ordinateur, il va directement sur Windows, sans me donner la possibilité de démarrer Ubuntu.
Comment puis-je récupérer Ubuntu?
Il y a maintenant une solution plus simple:
Ceci a été testé sur un ordinateur portable Samsung Series 7 Chronos avec double démarrage Windows 8 et Ubuntu 13.10, secure boot désactivé, UEFI et démarrage legacy activés.
Boot-Repair a fonctionné pour moi. C'est une application graphique très très facile à utiliser, vous n'avez pas besoin d'utiliser la ligne de commande, il vous suffit de cliquer sur un bouton :)
Toutes les options de réparation disponibles sont décrites dans la documentation Ubuntu et il y a une page séparée expliquant comment démarrer Boot-Repair (en créant un disque bootable ou en l'installant dans un disque live Ubuntu existant) et comment l'utiliser.
Il suffit de démarrer un live CD Ubuntu, d'installer Boot-Repair et de l'exécuter.
Lorsque GRUB est cassé, l'utilisateur n'a généralement pas accès aux systèmes, donc la réparation doit être effectuée à partir d'une session en direct (live-CD ou live-USB).
Il existe de nombreuses causes possibles à une rupture de GRUB : Windows écrit sur le MBR, DRM empêchant GRUB de s'installer correctement, bug de l'installeur, changement de matériel... Mettre à jour GRUB comme proposé initialement par Scott n'est généralement pas suffisant, réinstaller GRUB comme proposé par Marco est plus efficace, mais il existe toujours diverses situations nécessitant d'autres ajustements (ajouter des options au noyau, démasquer le menu GRUB, changer les options GRUB, choisir la bonne architecture hôte...). D'autres difficultés pour la réparation de GRUB sont l'utilisation de chroot, et le choix des bonnes partitions/disques.
Tout ceci a été simplifié dans un petit outil graphique : Boot-Repair. Il sera intégré dans le CD Ubuntu 12.04 pour une utilisation plus facile, mais pour les personnes ayant besoin maintenant, il existe déjà quelques distributions l'intégrant : Ubuntu-Secured-Remix (CD Ubuntu intégrant Boot-Repair), Boot-Repair-Disk (CD exécutant Boot-Repair au démarrage), ...
J'espère que cela vous aidera.
Les réponses données par Scott et Web-E sont assez bonnes et ont beaucoup aidé de nombreuses fois. Mais souvent, l'outil de réparation de démarrage n'est pas capable de réparer grub en raison de problèmes liés à la plate-forme i386 et amd64, ou lorsque grub ne peut pas trouver le répertoire efi
.
Ce qui a résolu mon problème plus de 10 fois, c'est de purger manuellement les anciennes installations de grub et d'en installer une nouvelle.
Alors, effectuez d'abord les 6 premières étapes de la réponse de Scott où vous pouvez sauter la 5ème étape si elle renvoie une erreur :
Démarrez à partir du CD en direct ou de la clé USB en mode "Essayer Ubuntu".
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 dans la session en direct) peuvent 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 situé dans
/dev/mapper/
, très probablement,/dev/mapper/{volume}--{os}-root
où{volume}
est le nom du volume LVM et{os}
est le système d'exploitation. Exécutezls /dev/mapper
pour en trouver le nom exact.Montez votre partition :
sudo mount /dev/sda2 /mnt #Remplacez sda2 par la partition de l'étape 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 à/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
en remplaçant
sdXW
,sdXY
etsdXZ
par les numéros de partition respectifs.Liez le montage à d'autres éléments nécessaires :
for i in /sys /proc /run /dev; do sudo mount --bind "$i" "/mnt$i"; done
Si Ubuntu est installé en mode EFI ([voir cette réponse si vous n'êtes pas sûr][efi]), utilisez
sudo fdisk -l | grep -i efi
ou GParted pour trouver votre partition EFI. Elle aura pour libelléEFI
. Montez cette partition, en remplaçantsdXY
par le numéro de partition réel de votre système:sudo mount /dev/sdXY /mnt/boot/efi
Accédez à votre installation Ubuntu via
chroot
:sudo chroot /mnt
Ensuite, effectuez ces étapes:
sudo dpkg --configure -a
sudo apt install -fy
sudo apt purge -y grub*-common grub-common:i386 shim-signed
sudo apt install -y grub-pc
sdXY
actuel pour installer le chargeur de démarrage. Trouvez où votre OS actuel est installé en utilisant la commande sudo fdisk -l
. Il sera étiqueté comme Linux
. Naviguez dans cette fenêtre en utilisant la touche Tab et sélectionnez une option en utilisant la touche Espace.sudo grub-update
pour vérifier.Si le problème persiste, vous pouvez consulter la wiki d'Arch pour réellement comprendre grub et résoudre de nombreuses autres variétés de problèmes. (Oui, cela aide aussi pour Ubuntu!).
La réponse de Scott Severance est valide et détaillée, mais il existe une solution qui ne nécessite aucun périphérique de démarrage externe et donc pas besoin d'identifier et de monter manuellement toutes vos partitions Ubuntu menant au chroot
.
Sous Windows 10, vous pouvez utiliser Récupération avancée
pour sélectionner un périphérique (partition?) à démarrer.
Allez dans Paramètres
et choisissez Mise à jour et sécurité
:
Allez dans Récupération
:
À partir de Démarrage avancé
, choisissez Redémarrer maintenant
Ensuite, choisissez Utiliser un périphérique
et toutes les options de démarrage devraient vous être présentées. Choisissez la partition 'ubuntu' et votre PC devrait ensuite démarrer à partir de cette partition.
Une fois démarré dans mon environnement Ubuntu habituel, j'ai essayé simplement d'exécuter grub-update
mais cela n'a apporté aucun changement.
J'ai ensuite trouvé ma partition /boot/efi
qui était /dev/nvme0n1p1
et j'ai exécuté sudo grub-install /dev/nvme0n1p1
puis sudo update-grub
.
Cela a restauré mon enregistrement de démarrage principal à plusieurs reprises maintenant car il semble y avoir une nouvelle politique de Windows 10 qui écrase les informations de démarrage lors de mises à jour mineures.
SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.