Après une grosse mise à jour de Windows, votre PC démarre directement sur Windows et GRUB a disparu. Linux n’est pas effacé pour autant : ses partitions sont intactes, c’est l’entrée de démarrage UEFI qui a été reprise en main par Windows. Une clé USB live et une dizaine de minutes suffisent généralement à tout remettre en place, sans rien réinstaller.
- Les partitions Linux restent intactes après une mise à jour Windows.
- Windows réécrit souvent l’ordre de démarrage UEFI et passe en première position.
- Une clé USB live suffit à réinstaller GRUB en une dizaine de minutes.
- Réordonner les entrées dans le BIOS règle une bonne partie des cas en deux minutes.
Ce qui s’est réellement passé
Sur un PC moderne en mode UEFI, le démarrage ne repose pas sur un secteur magique en début de disque, mais sur une petite partition FAT32 appelée ESP (EFI System Partition) et sur des entrées stockées dans la mémoire NVRAM de la carte mère. Chaque système y déclare son chargeur : Windows pointe vers son Boot Manager, Ubuntu ou Fedora vers shim et GRUB.
une mise à jour majeure de Windows peut réécrire l’ordre de démarrage et replacer son propre gestionnaire en première position. Dans d’autres cas, la mise à jour touche aux fichiers de l’ESP, ou le firmware réinitialise ses entrées.
Résultat : GRUB existe encore, mais personne ne l’appelle.
Avant de dégainer la clé USB, un test rapide s’impose. Ouvrez le menu de démarrage de la machine (souvent F12, F10, Échap ou Suppr selon les marques) et regardez si une ligne « ubuntu », « fedora » ou « debian » apparaît. Si oui, il suffit de la sélectionner pour lancer Linux, puis de réparer l’ordre de démarrage depuis le système en cours. Si le firmware ne propose rien, l’entrée a bel et bien été supprimée et il faudra la recréer.
Le plus simple : réordonner depuis Windows ou le BIOS
Entrez dans le setup UEFI et cherchez la rubrique « Boot Order » ou « Boot Priority ». Placez l’entrée Linux avant « Windows Boot Manager », enregistrez, redémarrez. C’est l’affaire de deux minutes, et ça règle une bonne partie des cas.
Si vous préférez rester sous Windows, une invite de commandes en administrateur permet de passer par bcdedit. La commande bcdedit /set {bootmgr} path \EFI\ubuntu\shimx64.efi indique à Windows de pointer vers le chargeur d’Ubuntu (adaptez le chemin à votre distribution, par exemple \EFI\fedora\shimx64.efi). Le vrai chemin se vérifie en montant l’ESP et en regardant son contenu dans le dossier EFI.
Cette astuce est bancale : une future mise à jour peut la défaire.
La réparation propre depuis une clé live
Créez une clé USB de la distribution que vous utilisez (Ubuntu, Linux Mint, Fedora, peu importe) et démarrez dessus en mode « Essayer sans installer ». Ouvrez un terminal. Commencez par identifier vos partitions avec lsblk -f : repérez la partition racine de Linux (ext4 ou btrfs en général) et l’ESP, en FAT32, d’environ 100 à 500 Mo.
Supposons une racine sur /dev/nvme0n1p5 et une ESP sur /dev/nvme0n1p1. Montez-les, puis liez les pseudo-systèmes de fichiers indispensables au chroot :
sudo mount /dev/nvme0n1p5 /mntsudo mount /dev/nvme0n1p1 /mnt/boot/efifor d in dev proc sys run; do sudo mount --bind /$d /mnt/$d; donesudo mount --bind /sys/firmware/efi/efivars /mnt/sys/firmware/efi/efivars
Cette dernière ligne n’a rien d’accessoire : sans les variables EFI visibles dans le chroot, grub-install ne pourra pas recréer l’entrée dans la NVRAM.
Entrez dans votre système avec sudo chroot /mnt, puis lancez grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=ubuntu. Sur Fedora, la logique diffère : le paquet grub2-efs et shim sont fournis par les paquets de la distribution, et on réinstalle plutôt avec dnf reinstall shim-* grub2-efi-*. Ensuite, générez la configuration avec update-grub (Debian, Ubuntu, Mint) ou grub2-mkconfig -o /boot/grub2/grub.cfg (Fedora). Quittez avec exit, redémarrez, retirez la clé.
Une vérification utile avant de redémarrer : efibootmgr -v liste les entrées de la NVRAM et leur ordre. Si Linux apparaît mais derrière Windows, efibootmgr -o 0001,0000 inverse la priorité (les numéros sont à adapter à votre liste).
Windows n’apparaît pas dans GRUB ?
C’est le piège inverse, fréquent juste après la réparation. Installez le paquet os-prober si besoin, puis relancez la génération de configuration. Sur Ubuntu récent, os-prober est désactivé par défaut : il faut décommenter ou ajouter GRUB_DISABLE_OS_PROBER=false dans /etc/default/grub avant de relancer update-grub.
Les cas qui compliquent la donne
Si votre disque est chiffré avec LUKS, il faut d’abord déverrouiller le conteneur avec cryptsetup open puis monter le volume logique avant de faire le chroot. Même principe avec LVM : vgchange -ay rend les volumes visibles. Le reste de la procédure ne change pas.
Autre grain de sable, le Secure Boot. Les distributions grand public passent par shim, signé par Microsoft, donc le démarrage fonctionne sans toucher au réglage. Une mise à jour de la base de révocation (DBX) peut cependant refuser un vieux shim : si le firmware affiche une erreur de violation de sécurité, mettez à jour les paquets shim-signed depuis le chroot avant de tenter autre chose. Désactiver Secure Boot reste possible, mais ce n’est pas la première chose à essayer.
Dernier détail, l’ancien mode BIOS/MBR. Il se répare avec grub-install /dev/sda (le disque, pas une partition), car il n’y a ni ESP ni NVRAM en jeu.
Et pour éviter la rechute, deux garde-fous : sauvegardez le dossier de l’ESP (sudo cp -r /boot/efi/EFI ~/esp-backup) et notez le numéro d’entrée renvoyé par efibootmgr. Après chaque grosse mise à jour semestrielle de Windows, le contrôle prend dix secondes.