131 votes

Comment puis-je réparer le chargeur de démarrage EFI de Windows 8 ?

J'ai installé Windows 7 et Windows 8 en mode EFI sur un disque dur il y a quelques jours. Aujourd'hui, le chargeur de démarrage a disparu/corrompu.

J'ai actuellement le programme d'installation de Windows 8 sur un lecteur flash et j'ai essayé d'utiliser l'option de réparation automatique pour réparer le chargeur de démarrage, mais cela n'a rien donné. L'option de réparation du démarrage est également absente du programme d'installation de Windows 8.

Comment puis-je réparer/recréer le chargeur de démarrage EFI à partir de l'invite de commande ?

BCDEDIT renvoie le message suivant :

The requested system device cannot be found.

189voto

Carlos Lande Points 136

J'ai passé beaucoup de temps à essayer de faire redémarrer mon PC Windows 8 après l'avoir cloné sur un nouveau SSD et j'essaie de résumer comment j'ai finalement réussi à tout faire fonctionner

Premièrement, démarrez à partir d'un disque de récupération UEFI Windows 8 (CD/DVD/USB) - J'ai constaté que le processus de récupération automatique ne trouvait pas la bonne partition Windows, et que lorsque je parvenais à l'ajouter aux paramètres BCD, il ne la rendait pas démarrable de manière fiable. Par exemple, en utilisant BCDEDIT, j'ai réussi à trouver et à lancer la partition Windows, mais elle refusait de démarrer à froid ou ne "gardait" pas les paramètres après un second redémarrage ou une mise hors tension.

Allez dans les options avancées et lancez l'invite de commande.

Entrez diskpart utiliser l'outil DiskPart pour s'assurer que vous avez toutes les bonnes partitions et pour identifier votre partition EFI - l'élément clé ici est que votre partition EFI est formatée en FAT32 :

DISKPART> sel disk 0

Disk 0 is now the selected disk.

DISKPART> list vol

  Volume ###  Ltr  Label        Fs     Type        Size     Status     Info
  ----------  ---  -----------  -----  ----------  -------  ---------  --------
  Volume 0     E                       DVD-ROM         0 B  No Media
  Volume 1     C                NTFS   Partition    195 GB  Healthy    Boot
  Volume 2         WINRE        NTFS   Partition    400 MB  Healthy    Hidden
  Volume 3                      FAT32  Partition    260 MB  Healthy    System

Attribuez ensuite une lettre de lecteur à la partition EFI :

DISKPART> sel vol 3

Volume 3 is the selected volume.

DISKPART> assign letter=b:

DiskPart successfully assigned the drive letter or mount point.

Quittez l'outil DiskPart en entrant exit et à l'invite de commande, exécutez ce qui suit :

cd /d b:\EFI\Microsoft\Boot\

bootrec /fixboot

Supprimer ou renommer le fichier BCD :

ren BCD BCD.bak

Utilisez bcdboot.exe pour recréer la mémoire BCD :

bcdboot c:\Windows /l en-gb /s b: /f ALL

El /f ALL met à jour les paramètres du BIOS, y compris le micrologiciel UEFI/NVRAM, /l en-gb est de localiser pour la locale UK/GB. La localisation par défaut est l'anglais américain, ou utilisez en-US.

Redémarrez et croisez les doigts.

Cela m'a donné des maux de tête. J'ai tourné en rond pendant un long moment. Il n'y a pas beaucoup d'informations fiables sur la correction de l'UEFI/Windows 8 au moment où j'écris ces lignes.

[EDIT]

Pour réactiver Hyper-V, j'ai également dû exécuter la commande suivante à partir d'une invite de commande administrateur dans Windows après le redémarrage :

bcdedit /set {default} hypervisorlaunchtype Auto
bcdedit /set {default} nx OptIn

22voto

romanb Points 2602

Les autres réponses sont utiles mais voici ce que j'ai dû faire pour réparer le mien.

J'avais un disque dur de 1,5 To avec Windows 7 installé dessus. J'ai ensuite installé Windows 8 sur un SSD de 150 Go que j'ai acheté. Le disque dur de 1,5 To est tombé en panne et j'ai pu l'entendre faire du bruit. Mon ordinateur ne démarrait plus et disait "Veuillez insérer le disque système". J'ai pensé que le chargeur de démarrage était manquant car il devait se trouver sur le disque de 1,5 To. Il s'est avéré que c'était le cas, mais le problème était que les guides que j'ai suivis n'ont pas permis de reconstruire le chargeur de démarrage ou quel que soit son nom, car je n'avais pas de partition EFI sur le plus petit disque de 150 Go (cela a pu exister sur le disque défaillant), il n'avait qu'une seule partition qui remplissait tout le disque.

Je ne voulais pas perdre toutes mes données, j'ai donc entré dans l'invite de commande en démarrant à partir de ma clé USB d'installation de Windows 8 (en notant que vous ne pouvez pas démarrer la version UEFI de cette clé si elle apparaît, sélectionnez pour démarrer à partir de la clé USB sans que l'UEFI apparaisse avant).

Une fois dans l'invite de commande (voir les autres réponses pour les instructions), vous devez réduire la partition. Pour ce faire, entrez les commandes suivantes, en appuyant sur Enter après chacun d'eux :

diskpart

list disk

select disk 0

list partition

select partition 1

shrink desired=200 minimum=200

create partition efi

list partition

select partition 2

format fs=fat32

Ces commandes vont créer la partition EFI. Vérifiez tout en tapant list vol . Vous devriez voir une partition de 200 Mo. Vous devez maintenant lui attribuer une lettre. Faites-le en tapant assign , alors list vol pour voir quelle lettre a été attribuée.

Maintenant que c'est fait, vous devez copier les fichiers de démarrage sur cette partition nouvellement créée :

bcdboot C:\Windows /l en-gb /s B: /f ALL

Note : vous devez remplacer C: avec la lettre du lecteur de la partition qui contient Windows, et B: avec la lettre assignée à la partition EFI que vous venez de créer.

J'ai également entré les commandes suivantes :

bootrec /fix

bootrec /fixmbr

Les deux sont revenus avec succès, je ne sais pas s'ils ont vraiment fait quelque chose mais on s'en fiche. Windows est maintenant complètement rétabli.

9voto

Matt Heck Points 249

Ok, j'ai eu le temps de mettre en place un plan correct ici. C'est long, mais c'est assez complet et ça devrait vous aider à voir ce qui se passe.

D'abord, une façon dont cela peut se produire :

  1. Votre BIOS perd ses paramètres.
  2. Pas de problème, tous ces trucs sont stockés dans la partition EFI.
  3. ...sauf pour le paramètre SATA IDE vs AHCI, pour des raisons évidentes.
  4. Avez-vous utilisé SATA-AHCI ? Vous utilisez probablement SATA-IDE maintenant.
  5. Avez-vous essayé de démarrer avant de vous en rendre compte ?
  6. Si vous l'avez fait, ça a échoué. Avez-vous laissé Windows essayer de le réparer ?
  7. Si vous l'avez fait, BLAM, cela peut très bien avoir détruit la base de données de configuration de démarrage.
  8. Assurez-vous que vous utilisez le bon paramètre SATA que vous utilisiez la dernière fois.

Voici ce que vous avez probablement fait maintenant. SI L'UNE OU L'AUTRE NE CORRESPOND PAS, EVALUEZ AVEC SOIN SI C'EST EN FAIT VOTRE PROBLÈME, LISEZ ceci pour avoir des idées mais ne le SUIVEZ pas sans y réfléchir d'abord.

  1. Vous avez, par chance, ignoré toutes les conneries concernant la réparation du Master Boot Record (MBR), de la table de partition, des drapeaux de partition, et autres conneries qui ne s'appliquent PAS à un scénario de démarrage EFI. DU TOUT . Au mieux, vous serez en mesure de reconstruire complètement un nouveau, sans rapport Une solution de démarrage NON-EFI. Cela pourrait ne pas être trivial, cependant, parce que :
  2. Vous avez compris que Windows est certain de ne pas disposer d'une base de données de configuration de démarrage, mais il est, malheureusement, soit complètement désemparé, soit TRÈS certain de l'endroit où elle se trouve - vous ne pouvez pas dire lequel.
  3. Vous êtes conscient que le magasin de chaussures est normalement (somewhere)\Boot\BCD et que le fichier est CACHÉ ; visualisez-le en utilisant dir /a:hs .
  4. Vous vous êtes un peu familiarisé avec BCDedit.exe et j'ai découvert qu'il vous permettra de "simuler" une base de données de configuration de démarrage dans un fichier de préparation en utilisant /CreateStore (et s'il vous plaît, ne l'appelez pas "BCD"), que vous pouvez explicitement utiliser le fichier de mise à disposition avec la commande /Store que vous pouvez ajouter une entrée de menu pour le gestionnaire de démarrage de Windows en utilisant /Create {bootmgr} et que vous devriez être en mesure de l'importer en utilisant /Import ...
  5. ...mais quand vous essayez de le faire, vous ne pouvez pas. Vous regardez dans le /SysStore qui semble correcte, mais vous ne pouvez pas lui faire utiliser un autre magasin parce que c'est "ambigu". Vous avez l'intuition qu'il sait où se trouve le magasin - ou devrait se trouver - mais vous ne pouvez pas le trouver.
  6. Vous avez essayé d'utiliser MountVol pour monter la partition EFI, mais elle n'apparaît même pas dans la liste, donc vous ne pouvez pas.

Si tout cela vous concerne de près, voici ce qui pourrait se passer :

  1. Windows sait que vous êtes configuré pour EFI (vous avez démarré le DVD via un démarrage UEFI, vous avez une partition EFI, etc.)
  2. Il sait donc OÙ CHERCHER le fichier BCD, mais soit il se trompe d'emplacement (ce n'est pas ce problème, mais il est similaire), soit le BCD a été supprimé.
  3. Apparemment, parce qu'elle sait où elle devrait être, cette rupture /SysStore -- et en fait, c'est probablement le comportement correct, parce que sinon vous le mettriez au mauvais endroit.
  4. D'après ce que je peux dire, MountVol cache délibérément la partition EFI (ou est incapable de la remarquer). Cela empêche de monter le système de fichiers, ce qui empêche de trouver le bon sous-répertoire, de vérifier que la base de données existe, etc.

Voici donc, enfin, ce que vous devez faire à ce sujet. La bonne nouvelle est que c'est probablement beaucoup plus simple que vous ne l'espérez maintenant.

  1. Vous devez en effet monter la partition EFI.

    En fait, j'ai l'impression que ce n'est pas strictement correct-- Je soupçonne fortement que la partition EFI est déjà montés par un sous-système interne, ce qui explique pourquoi BCDedit devient grincheux il ne voit pas la base de données, mais il sait où il doit aller. Ce qu'il n'a pas, cependant, c'est une lettre de lecteur. Alors que faire ?

    Eh bien... jusqu'où remontent vos racines DOS ? Vous souvenez-vous du Assign commande ? Devinez quoi.

  2. Début DiskPart .
  3. Si vous n'êtes pas familier avec DiskPart Le système fonctionne essentiellement comme une hiérarchie d'ensembles ; vous devez sélectionner exactement un élément à un niveau pour passer au suivant. Donc, List Disk et ensuite Select Disk n donde n est ce qui est approprié pour vous.
  4. Utilisez List Partition y List Volume (note non plurielle) pour obtenir un aperçu et identifier votre partition EFI.

    C'est généralement une partition FAT32 de 100 Mo marquée System . Gardez à l'esprit que votre disque devrait utiliser une table de partition GPT maintenant, donc vous pouvez voir un certain nombre de partitions. Certaines d'entre elles sont destinées à la récupération d'urgence - elles sont très utiles pour les problèmes EFI, non ? Mais bon.

    Remarquez que la partition EFI, et quelques autres, n'ont pas de lettres de lecteur. Si vous le souhaitez, vous pouvez également afficher les attributs de la partition GPT, ce qui peut également vous donner quelques moments "Aha" liés à la tangente.

  5. Select Partition n où n est la partition EFI. (Je suppose que vous pouvez sélectionner le volume à la place si vous en avez besoin).
  6. Assign . C'est tout. Ne spécifiez pas de lettre de lecteur ; il suffit de Assign .
  7. List Volume . Vous devriez maintenant voir une lettre de lecteur assignée à la partition EFI.
  8. Exit DiskPart.

    Et maintenant... un gros avertissement. Vous allez probablement aller directement à S : (ou ce que vous avez obtenu de Assign ) et remarquez une partition de démarrage. "AHA !" Vous allez dire. "Il n'y a pas de BCD fichier ici !" Premièrement... souviens-toi que ce fichier est caché. Deuxièmement... creusez un peu plus, et vous remarquerez que bien qu'il y ait S:\EFI\Boot et aussi S:\EFI\Microsoft\Boot

    Vous devez vérifier que ces deux éléments ne présentent aucun problème. S:\EFI\Boot est pour le carte mère et contient le programme de démarrage de Windows CHARGEUR (et éventuellement d'autres choses pour d'autres systèmes d'exploitation). Il porte ce nom parce que la carte mère n'a aucune idée si vous allez avoir Windows ou non, et a besoin d'un chemin fixe qui ait du sens.

  9. Inspecter S:\EFI\Boot . Pour Windows 7 Professionnel, 64 bits, vous devriez voir : bootx64.efi
    Si vous avez installé un Shell d'EFI (toujours une bonne idée), vous pouvez voir en outre shellx64.efi .

    REMARQUE : Les utilisateurs de Linux double-boot utilisant chainloader+1 Vous ne verrez pas d'entrée supplémentaire ici.

  10. Inspecter S:\EFI\Microsoft\Boot en utilisant ambos dir y dir a:h . Pour Windows 7 Professional, 64-bit, vous devriez voir un tas de modèles de langue ( en_US etc.) et les fichiers suivants :

    bootmgr.efi
    bootmgfw.efi
    memtest.efi
    BCD
    BCD.Backup.001
    BCD.Backup.002

    ...sauf que vous ne voyez probablement pas BCD n'est-ce pas ? Mais ces fichiers de sauvegarde ont l'air tentants.

  11. Déterminez le fichier de sauvegarde que vous voulez utiliser. Les modifications récentes manquantes sont loin d'être aussi importantes que votre capacité à démarrer le système, alors choisissez le fichier le plus intact. Vous verrez probablement un grand fichier et un autre assez petit. Le petit est déjà corrompu, et est un artefact de l'échec du processus de réparation - ne l'utilisez pas. Si elles sont toutes deux grandes, utilisez la plus ancienne. DANS TOUS LES CAS, faites des COPIES DE SAUVEGARDE SUPPLÉMENTAIRES. DES DOSSIERS ailleurs.
  12. Copiez la sauvegarde que vous avez décidé d'utiliser vers BCD .
  13. Quittez le Shell, arrêtez-vous proprement et redémarrez.
  14. Dites à Windows de démarrer NORMALEMENT. À ce stade, il devrait démarrer.

Q : Que faire si vous n'avez pas de BCD de secours ?

A : Eh bien, que wirklich ne devrait pas se produire. Cela signifie probablement que vous vous trouvez dans le mauvais répertoire, que vous supportez l'EFI mais que vous ne l'utilisez pas, ou que vous avez reconstruit votre partition EFI sans tous les éléments nécessaires à Windows (possible, surtout si vous utilisez plusieurs versions de Windows). Dans ce cas, vous devrez copier les éléments EFI du DVD, puis modifier ou reconstruire la base de données de configuration de démarrage en utilisant la commande BCDedit .

Q : Pouvez-vous me donner un exemple d'un scénario où BCDedit /SysStore peut être utilisé pour faire n'importe quoi sur un système EFI ?

R : Jusqu'à présent, non.

Quoi qu'il en soit, j'espère que cela contribuera à résoudre certains problèmes pour les gens, ou du moins à les faire réfléchir. Pour finir, notez que vous pouvez monter et inspecter votre partition EFI. sous Windows normalement en utilisant le DiskPart : Assign technique ci-dessus. Vous devriez le faire au moins une fois, pour obtenir une sauvegarde complète de votre partition EFI, AVANT vous rencontrez ce genre de problème. Je recommande de faire une sauvegarde dans un sous-répertoire de votre C: et une autre sur une clé USB.

Désolé d'avoir été si long. Je dois en faire un article à un moment donné, mais il y a tellement de gens qui sont TELLEMENT frustrés que j'ai ressenti le besoin de documenter mon expérience aussi complètement et rapidement que possible.

5voto

harrymc Points 394411

Windows 8 n'est pas encore dans sa forme finale, il faut donc s'attendre à des problèmes. Vous êtes dans un domaine nouveau pour la plupart d'entre nous, où les commandes que nous avions l'habitude d'utiliser peuvent ne plus fonctionner. Aux commandes listées par @soandos, j'ajoute celle qui reconstruit complètement le BCD :

bootrec /rebuildbcd

Essayez également d'utiliser le menu de démarrage avancé de Windows 8 et faites-nous savoir ce qui se passe.

Si rien ne fonctionne, l'article Réparation de Windows 7 lorsqu'il ne démarre pas donne des conseils sur l'utilisation bcdedit pour corriger les erreurs de démarrage. Il serait en tout cas intéressant de voir quelle est la sortie de bcdedit sur votre ordinateur.

[EDIT]

Ces liens peuvent contenir des idées utiles :

Récupération du chargeur de démarrage Windows à partir du DVD
Problème de récupération du gestionnaire de démarrage de Windows 7
Windows 7 ne démarre soudainement plus - Réparation du chargeur de démarrage de Windows 7

3voto

Rodolfo Philipp Points 31

Le moyen le plus simple :

  • Suivez les étapes du post ci-dessus pour localiser le fichier BCD et allez dans son répertoire.

  • Si le fichier BCD est caché, tapez attrib bcd -s -h -r et appuyez sur Enter . Cela vous permettra de modifier et d'écraser le fichier.

  • Type ren bcd bcd.old et appuyez sur Enter . Ceci renomme le fichier BCD actuel.

  • Type Bootrec /RebuildBCD et appuyez sur Enter pour forcer Windows 8 à reconstruire le menu de démarrage à partir de zéro.

  • Quittez l'invite de commande et arrêtez-vous. Retirez le support de récupération Windows et redémarrez. Vous avez terminé !

SistemesEz.com

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.

Powered by:

X