Comment déplacer les fichiers de démarrage de Windows 7 (bootmgr,…) vers un autre lecteur?

10

Je voulais une configuration à double démarrage. J'ai donc d'abord installé Windows 7 sur la 1ère partition d'un disque dur (nous l'appellerons HDD1), puis je suis allé installer Ubuntu 9.10 sur la deuxième partition de HDD1. Malheureusement, cela n'a pas fonctionné (il a contourné GRUB2 et est allé directement dans Windows). J'ai décidé de réinstaller Ubuntu, et c'est alors que j'ai remarqué que (pour une raison quelconque) Windows a décidé de placer ses fichiers de démarrage sur un autre disque dur (nous l'appellerons HDD3).

Je voudrais résoudre ce problème - je veux déplacer les fichiers de démarrage de HDD3 vers HDD1. Cela peut aider à résoudre mon problème de double démarrage, mais même si ce n'est pas le cas, d'après mon expérience, cela évitera beaucoup de maux de tête sur la route. Comment puis-je faire ceci? Je vais supposer que ce n'est pas aussi facile que de simplement copier les fichiers, mais j'aimerais avoir tort :)

Octobre rouge
la source

Réponses:

16

Grâce à quelques recherches sur Google, j'ai trouvé la solution suivante (j'utilise HDD1 et HDD3 pour représenter les deux disques durs qui m'intéressent, comme mentionné ci-dessus dans ma question):

  1. Les fichiers de démarrage se composent d'un dossier appelé Boot et d'une application appelée bootmgr . Ce sont des fichiers système et sont donc normalement masqués. Vous devez les rendre visibles.
  2. Copiez-les tous les deux du HDD3 vers le HDD1. Il se plaindra que deux fichiers ne peuvent pas être copiés : BCD et BCD.log , qui se trouvent tous deux dans le dossier de démarrage . Ce dernier est sans importance (c'est juste un fichier journal) et peut être ignoré; le premier sera copié à l'étape suivante.
  3. Ouvrez une invite de commande avec des privilèges d'administrateur. Tapez la commande suivante bcdedit /export HDD1:\Boot\BCD:, où HDD1 est la lettre de pilote de votre lecteur de destination. Dans mon cas, HDD1 était C , donc la commande était bcdedit /export C:\Boot\BCD.
  4. Maintenant, vous devez modifier le fichier BCD afin que toutes les entrées soient correctes. J'ai utilisé le programme bcdedit fourni avec Windows 7, mais il y en a d'autres. J'ai entendu dire qu'EasyBCD est assez bon (et gratuit), mais la dernière version ne prend pas complètement en charge Windows 7. Je pense qu'une nouvelle version qui prend en charge Windows 7 sera bientôt disponible. Tout d'abord, je navigue vers HDD1 \ Boot sur l'invite de commande (avec des privilèges d'administrateur) et saisisbcdedit /store BCD /enum ALL . J'utilise le /storecommutateur pour spécifier le fichier BCD dans le répertoire actuel - en omettant ce commutateur, je pense que celui par défaut, qui se trouve sur HDD3. Cette commande répertorie toutes les entrées du fichier BCD .
  5. J'ai scanné les entrées, et il s'avère que les entrées pour {bootmgr}et les {memdiag}deux pointent vers HDD3. Bien sûr, je veux qu'ils pointent vers HDD1. Donc j'envoyer des commandes sous la forme suivante: bcdedit /store BCD /set [entry_name] device partition=HDD1:. Depuis HDD1 est C sur ma machine, je taperais ce qui suit pour définir l' {bootmgr}entrée: bcdedit /store BCD /set {bootmgr} device partition=C:.

C'est à peu près ça. Une dernière étape consiste à activer HDD1 via Disk Management(accessible à partir de la gestion de l'ordinateur) - il était déjà actif sur mon système, donc je n'avais rien à faire.

Maintenant, en ce qui concerne l'étrange problème de double démarrage, il s'avère que j'ai oublié que j'avais physiquement changé l'ordre des disques durs. En tant que tel, l'ordre de démarrage du BIOS était incorrect (il essayait d'abord de démarrer à partir du HDD3 , au lieu du HDD1). Et oui, c'était une erreur incroyablement stupide de ma part :)

Octobre rouge
la source
la deuxième étape de l'attribution ne devrait pas être nécessaire car les indicateurs d'attrrib du fichier d'origine sont + a seulement
Ces instructions sont très utiles. J'ai plusieurs machines à double démarrage utilisant Win7 et Ubuntu et au fil du temps, j'ai trouvé la meilleure solution permanente à cela est BootIT NG terabyteunlimited.com/bootit-next-generation.htm .
jtreser
Si vous rencontrez le problème où le gestionnaire de démarrage se trouve sur une partition réservée au système, vous pouvez lui affecter une lettre de lecteur à partir de la gestion des disques afin que vous puissiez accéder aux fichiers et les copier. Très bonne réponse!
Nate Bundy
1

Le moyen le plus simple consiste à télécharger et installer simplement EasyBCD: http://neosmart.net/dl.php?id=1

Sur la page "BCD Backup / Repair" d'EasyBCD, il y a une option appelée "Change Boot Drive" qui affichera une liste de tous les disques locaux. Vous choisissez simplement le disque que vous voulez, et EasyBCD automatisera tout le processus pour vous, y compris rendre la partition sélectionnée active et démarrable, importer l'ancien contenu du chargeur de démarrage et écrire le MBR.

(Divulgation: je suis l'auteur d'EasyBCD)

Mahmoud Al-Qudsi
la source
1
de bons conseils à télécharger, surtout si vous ne pouvez pas démarrer
Ewoks
Si vous ne pouvez pas télécharger, vous pouvez utiliser le CD EasyRE amorçable à la place: neosmart.net/EasyRE Vous utilisez un autre PC pour créer un CD amorçable et démarrer à partir de celui-ci pour réparer le PC.
Mahmoud Al-Qudsi