Quelles sont les bcdedit
commandes nécessaires pour configurer le double démarrage entre différentes installations de Windows? 5
Contexte
J'ai récemment installé Windows 8 sur un disque dur séparé 1 . Maintenant que Windows 8 est installé, je veux revenir en arrière sur Windows 7.
J'ai mes 2 disques durs:
Vous pouvez donc voir que j'ai mes deux disques, avec les partitions contenant Windows:
- Windows 7 :
\\PhysicalDisk0
(partition 0 3 ) - Windows 8 :
\\PhysicalDisk2
(partition 1)
Ce que j'essaie de comprendre, c'est comment utiliser bcdedit
pour indiquer à la chose qui démarre Windows qu'il existe une autre installation Windows.
En cours d'exécution bcdedit
, il affiche la configuration actuelle:
C:\WINDOWS\system32>bcdedit
Windows Boot Manager
--------------------
identifier {bootmgr}
device partition=\Device\HarddiskVolume2
description Windows Boot Manager
locale en-US
inherit {globalsettings}
integrityservices Enable
default {current}
resumeobject {ce153eb7-3786-11e2-87c0-e740e123299f}
displayorder {current}
toolsdisplayorder {memdiag}
timeout 30
Windows Boot Loader
-------------------
identifier {current}
device partition=C:
path \WINDOWS\system32\winload.exe
description Windows 8
locale en-US
inherit {bootloadersettings}
recoverysequence {ce153eb9-3786-11e2-87c0-e740e123299f}
integrityservices Enable
recoveryenabled Yes
allowedinmemorysettings 0x15000075
osdevice partition=C:
systemroot \WINDOWS
resumeobject {ce153eb7-3786-11e2-87c0-e740e123299f}
nx OptIn
bootmenupolicy Standard
hypervisorlaunchtype Auto
Je ne trouve aucune documentation sur la différence entre le gestionnaire de démarrage Windows et le chargeur de démarrage Windows .
Documentation
Il existe de la documentation sur Bcdedit
:
- Technet: référence de la ligne de commande - Bcdedit
- Technet: Kit d'installation automatisée Windows - Options de ligne de commande BCDEdit
- Livre blanc - Commandes BCDEdit pour l'environnement de démarrage (document Word)
Mais ils n'expliquent pas comment modifier les données de configuration de démarrage binaire.
Si je devais deviner , je penserais qu'un gestionnaire de démarrage Windows indique au BIOS quel programme il doit exécuter. Ce programme donnerait à l'utilisateur un ensemble de choix de démarrage. Cela laisse le chargeur de démarrage Windows être un choix de démarrage particulier , qui représente une installation particulière de Windows.
Si tel est le cas, je devrais créer une nouvelle entrée Windows Boot Loader .
Cela signifie que je pourrais vouloir utiliser le /create
paramètre:
/créer
Crée une nouvelle entrée de démarrage:
bcdedit [/ nom de fichier du magasin ] / create [ id ] / d description [/ application apptype | / Hériter [ APPTYPE ] | / hériter APPAREIL | / appareil ]
Je suppose donc une syntaxe de:
>bcdedit /create /d "The old Windows 7" /application osloader
Où application
peut être l'un des types suivants:
Apptype Description
BOOTSECTOR The boot sector application
OSLOADER The Windows boot loader
RESUME A resume application
Malheureusement, la seule documentation sur osloader
est "Le chargeur de démarrage Windows" . Je ne vois pas comment cela peut faire la différence entre Windows 8 sur un disque dur et Windows 7 sur un autre.
L'autre paramètre possible lorsqu'un /create
chargeur de démarrage est
>bcdedit /create /D "Windows Vista" /device "The Quick Brown Fox"
Malheureusement, la documentation manque pour /device
:
/dispositif
Optionnel. Si id n'est pas défini sur un identificateur connu, l'option utilisée pour spécifier la nouvelle entrée de démarrage comme entrée d'options de périphérique supplémentaire.
Comme je n'ai pas défini id
un identificateur bien connu, je dois définir / device sur "l'option utilisée pour spécifier la nouvelle entrée de démarrage comme entrée d'options de périphérique supplémentaire" . Je connais tous ces mots; ils sont tous anglais. Mais je n'ai aucune idée de ce qu'il dit; ces mots dans cet ordre semblent absurdes.
Je suis donc un peu gêné. Je ne veux pas être comme Dan Stolts de Microsoft, qui a détruit ses disques durs en essayant d'utiliser BCDEdit :
Je n'ai trouvé aucun contenu particulièrement utile lorsque j'ai arrosé ma machine en jouant avec BCDEdit. Ce poste aurait été bien s'il y avait beaucoup plus de détails en particulier sur la commande / set osdevice, etc. Donc , une fois que je me suis fixé ma machine, je la solution et documenté l'information est ici ... .
Je veux dire, si un gars de Microsoft ne sait même pas comment utiliser BCDEdit pour éditer son BCD, alors quelle chance ai-je?
Lecture bonus
- Options de ligne de commande BCDEdit
- Bcdedit
- Le système Server 2008 R2 ou Windows 7 ne démarre PAS après avoir modifié le gestionnaire de démarrage à l'aide de BCDEdit
- Visual BCD Editor 4
- Configuration de Windows 7 et Windows 8 RTM Dual Boot
Notes de bas de page
- 1 Étant donné que le programme d'installation de Windows 8 aurait endommagé mon installation de Windows 7, j'ai décidé de débrancher mon disque dur «principal» pendant l'installation. Ce qui est une longue explication des raisons pour lesquelles le programme d'installation de Windows 8 n'a pas détecté l'installation existante de Windows 7. Normalement, le programme d'installation aurait automatiquement créé les entrées requises pour le double démarrage. Ce n'est pas que la raison pour laquelle je pose la question soit importante.
- 2 Il y a vraiment trois disques, mais le troisième n'est qu'un stockage en vrac. L'existence d'un 3ème disque dur est sans rapport avec la question. Je ne le mentionne que si quelqu'un veut savoir pourquoi la capture d'écran a 3 disques durs alors que je n'en mentionne que deux.
- 3 J'ai arbitrairement commencé à numéroter les partitions à "zéro" ; ne pas impliquer que les partitions sont numérotées à partir de zéro. Je ne mentionne que les partitions parce que je ne vois pas comment un chargeur de démarrage pourrait faire son travail sans savoir dans quelle partition et dans quel dossier se trouve une installation de Windows.
- 4 Je pose des questions sur BCDEdit. J'ai essayé Visual BCD Editor . Il semble être un éditeur visuel BCD. C'est-à-dire qu'il s'agit d'une interface graphique, mais utilise toujours la même terminologie que BCDEdit, et nécessite les mêmes connaissances que BCD ne documente pas.
- 5 Par souci de simplicité, nous supposerons que toutes les installations de Windows sur lesquelles je souhaite effectuer un double démarrage sont Windows Vista ou version ultérieure, ce qui les rend toutes compatibles avec BCDEdit et le chargeur de démarrage binaire. L'alternative nécessiterait de plonger dans les subtilités de l'ancien
ntloader
. Je ne demande pas non plus un double démarrage sur Linux; ou comment démarrer sur une image de disque dur virtuel (vhd). Juste des versions modernes de Windows sur des disques durs existants sur la même machine.
bcdedit
est pourbcdboot e:\windows
(voir ici pour la question){current}
ne marche pas.Quelques notes sur un critique dans la question d'origine sur l'utilisation de la même terminologie dans Visual BCD que Microsoft utilise pour bcdedit.
Le concept BCD est développé par Microsoft. Il est livré avec sa propre terminologie. Je ne pense pas pouvoir le changer. Je peux seulement l'étendre.
Microsoft a proposé deux méthodes pour accéder / modifier BCD:
Les deux interfaces parlent d'objets et d'éléments BCD. Il s'agit d'un concept général utilisé aussi bien en programmation / informatique que dans d'autres domaines humains. On pourrait même aller jusqu'à la philosophie qui utilise la terminologie des objets, des propriétés et des relations pour décrire le monde et l'univers.
L'accès au fournisseur BCD WMI est plus flexible car il donne au programmeur la possibilité d'accéder à chaque objet et élément de BCD et de les utiliser librement.
Visual BCD utilise pleinement l'interface du fournisseur BCD WMI et implémente l'accès de la même manière que nous sommes utilisés pour accéder au registre Windows à l'aide de regedit.exe. De plus, l'outil automatise deux tâches principales: la création de chargeurs et la réparation à double démarrage . Aucun autre outil n'offre une telle fonctionnalité automatique en un clic . Je dirais que c'est une nouvelle terminologie et un nouveau niveau d'abstraction . Je ne changerais pas la base que Microsoft a créée, je ne peux que la construire.
Les utilisateurs novices cliquent simplement sur un bouton et une opération complexe est effectuée! Aucun fond n'est nécessaire! Vous n'avez même pas besoin de savoir combien de versions de Windows vous avez installées - l'outil essaie de les trouver toutes, puis de créer des chargeurs pour eux si les chargeurs correspondants ne sont pas déjà présents dans BCD - la terminologie utilisée - "Créer des chargeurs Windows manquants" - I pense que tout le monde parlant anglais pourrait comprendre / cliquer / confirmer une telle opération ou je me trompe?
La complexité des objets et des éléments dans BCD est naturelle car le concept couvre le démarrage de systèmes d'exploitation Windows plus récents et plus anciens ainsi que des systèmes d'exploitation étrangers tels que Linux, Unix etc.De plus, il s'agit d'un concept général pour le démarrage MBR et le démarrage EFI sur une variété d'appareils.
La partie la plus complexe de BCD est le concept d'appareil . Vous avez un périphérique de partition, un périphérique ramdisk, un périphérique de fichier, localisez le périphérique - vous devez passer un peu de temps à le comprendre et je ne pense pas que ce soit pour l'utilisateur Windows normal. Les forums regorgent de questions sur les partitions de disque, ce qui est un sujet beaucoup moins complexe. De nombreux utilisateurs de Windows ne connaissent même pas la différence entre la partition principale et la partition logique par exemple. Vous devez connaître les partitions si vous souhaitez effectuer un démarrage double / multiple. Vous devez acheter un terrain si vous voulez construire une deuxième maison.
Le concept BCD est le même depuis Vista - seuls les nouveaux éléments sont définis dans Windows 7/8.
Je pense que la structure de registre pour BCD est choisie car Windows implémente déjà cette interface et c'est une interface transactionnelle fiable qui a fait ses preuves au fil des ans. Si le concept de registre Windows en général est un bon ou un mauvais concept, c'est un autre sujet.
C'est au programmeur / développeur de créer une interface plus conviviale. J'ai commencé par donner la même interface - un équivalent GUI de bcdedit - plus tard, l'interface peut être abstraite à un niveau supérieur en fonction des modèles d'utilisation. Une vue structurée de BCD est déjà implémentée. Il s'agit de la couche d'abstraction de base.
Le niveau d'abstraction suivant serait de se concentrer sur les relations entre les objets, car ce sujet n'est pas traité par Microsoft. Pas une tâche facile. La nouvelle terminologie vient avec l'abstraction.
la source
Windows
ici et un autreWindows
là-bas. Comment puis-je démarrer entre eux?". Plutôt qu'un tutoriel complet sur toutes les options de BCDEdit, j'espérais pour les commandes qui ne peuvent résoudre que ce problème (apparemment simple). Peut-être presque quelque chose d'aussi simple que celamsconfig
, sauf qu'il vous permet de naviguer vers une autre installation de Windows et de l'ajouter pour vous.Vous avez besoin d'une
BCDEdit /set
commande pour configurer le volume de démarrage. Ajoutez ensuite l'entrée au menu du système d'exploitation Windows Boot Manager en appelant laBCDEdit /displayorder
commande.Il identifiera également la partition de l'autre système d'exploitation ou la commande suivante
La ligne suivante rend l'entrée démarrable en l'ajoutant au menu
Vous pouvez vérifier que la nouvelle entrée apparaîtra dans le menu de démarrage en exécutant la commande
bcdedit /enum ACTIVE
et en recherchant l'entrée Windows Legacy OS Loader.Remarque : la
/create
commande est utilisée pour ajouter un système d'exploitation non Microsoft à l'entrée du chargeur de démarrage.Pour plus d'informations à ce sujet, vous pouvez lire cet article source
Concernant votre question sur " Différence entre le chargeur de démarrage Windows et le gestionnaire de démarrage "
De wikipedia
Voir aussi sur technet .
Visual BCD Editor est une version graphique avancée de l'utilitaire Windows bcdedit.
Page de téléchargement de l'éditeur visuel BCD.
Essayez de réparer l'option dans l'outil.
la source
Bien que vieux, je veux ajouter aux réponses, car plusieurs des réponses ci-dessus contiennent des informations incorrectes. Ils fonctionnent probablement, mais vous n'avez certainement pas besoin d'un programme externe, ni même
bcdboot
de le faire. Pour référence, les informations correctes sont les suivantes:Arrière-plan BCD rapide s'il est nouveau
BCD est la configuration de démarrage de Windows. Il contient de nombreuses sections, chacune identifiée par un nom (appelé la "description") et un identifiant qui ressemble un peu à ceci: "{0743bb44-fda6-11e3-90c8-e3ee27f3aec6}".
Il existe plusieurs "identifiants connus", et bcdedit les utilisera utilement là où il le peut, (sauf si vous utilisez l' option
/v
(verbose) avec/enum
). Ils ressemblent à ceci: "{bootmgr}", "{memdiag}". Ce ne sont que des noms abrégés pour les identifiants complets, mais ils sont plus faciles à utiliser. Vous pouvez utiliser l'un ou l'autre.Vous pouvez lister ces sections avec la commande suivante (le « tous » est facultative , mais sans elle , vous ne verrez pas une liste complète):
bcdedit /enum all
.Sortie typique:
De même, pour faciliter l'identification des périphériques, il utilisera un format similaire
\Device\HarddiskVolume2
, mais reconnaîtra la partition par sa lettre ("C:") si une est attribuée.La liste produite par
/enum all
commence par une section facultative du gestionnaire de démarrage du firmware (si votre carte mère a EFI). Son nom abrégé est "{fwbootmgr}" . Il contrôle le choix de démarrage EFI initial (que ce soit pour utiliser le gestionnaire de démarrage Windows habituel ou des périphériques spécifiques). En général, vous pouvez ignorer {fwbootmgr} s'il est présent.En dessous se trouve le "Windows Boot Manager" (identifiant "{bootmgr}" ). C'est celui avec lequel vous travaillerez. Il contient la configuration du menu de base ou tout ce que vous obtenez au démarrage (si le gestionnaire de démarrage Windows fonctionne et qu'il peut trouver BCD en premier lieu).
Sous {bootmgr} se trouvent un certain nombre de sections "Windows Boot Loader" et éventuellement d'autres sections, chacune contrôlant une action ou une option de démarrage.
Configuration du double démarrage à l'aide de bcdedit (vous n'avez besoin de rien d'autre)
Pour effectuer un double amorçage, vous indiquez à bcdedit
/copy
une bonne entrée connue du chargeur d'amorçage Windows pour votre premier système d'exploitation./copy
pour copier une entrée existante{current}
est l' identifiant de l'entrée que vous souhaitez copier. C'est un raccourci pour l'élément de démarrage actuel. Si ce n'est pas celui que vous souhaitez effectuer un double démarrage, utilisez l'identifiant correct pour celui que vous souhaitez. Le texte de description de chaque entrée vous aidera à trouver celle que vous souhaitez./d "Description for copied entry
sera la description du nouvel articleIl fera une copie de cette entrée, lui donnera la description indiquée et répondra avec le nouvel identifiant qu'il a donné à la copie:
Cela crée une entrée indépendante avec le bon nom, vous devez maintenant lui dire quoi faire. Comme presque rien n'a changé dans les systèmes d'exploitation récents, vous pouvez simplement configurer l'appareil et l'osdevice sur votre partition Win7, et cela fonctionnera probablement. Si nécessaire, regardez la sortie de / enum lorsque vous démarrez normalement dans Win7 et copiez les entrées auxquelles il semble s'attendre. Mais généralement, il suffit d'attribuer temporairement une lettre à votre deuxième système d'exploitation, comme "Q", puis la commande est:
bcdedit /set {NEW_IDENTIFIER} device partition=Q:
ou quelque chose, et la même chose pourosdevice
. bcdedit triera les lettres de lecteur, voir ci-dessous. Vous pouvez supprimer la lettre du lecteur temporaire une fois qu'elle a été utilisée dans bcd.Ajoutez-le ensuite à la liste des entrées de {bootmgr} en utilisant
bcdedit /displayorder {NEW_ID} /addlast
, et - surtout - dites à bcd d'afficher un menu de démarrage en utilisantbcdedit /set {bootmgr} displaybootmenu Yes
.Terminé.
Remarque - il est sûr d'utiliser des lettres de lecteur "impaires" ou "incorrectes" dans BCD, et il est sûr si la sortie de / enum les contient également.
Pour être clair, vous n'avez pas à vous soucier que votre nouvel appareil soit identifié comme Q: (ou quoi que ce soit) quand il "devrait être C:". bcdedit stocke l'ID du disque dur, pas la lettre. C'est simplement accepter et afficher Q: pour être utile. Si un appareil a une lettre, il affichera la lettre par défaut au lieu de l'ID de l'appareil, pour votre facilité. Vous pouvez le voir en supprimant ou en affectant la lettre du 2e OS dans DISKPART ou DISKMGMT.MSC et la sortie de / enum reviendra immédiatement à un \ Device à la place. Il a en fait enregistré l'ID de disque dur correct, et lorsqu'il est utilisé pour démarrer, Windows trouvera cet appareil - la lettre est simple et jamais réellement enregistrée.
la source
{0743bb44-fda6-11e3-90c8-e3ee27f3aec6}
? Vous avez déjà copié le{current}
chargeur de démarrage Windows ; de quelle autre chose faites-vous une copie? (Pas le gestionnaire de démarrage Windows, je suppose)En réponse à la question spécifique de l'auteur telle que réitérée dans les commentaires (même si elle diffère de sa question initiale concernant les
bcdedit.exe
séquences pour accomplir la même chose):EasyBCD est exactement ce que vous recherchez (gratuit pour un usage personnel). Il s'agit d'un outil de gestionnaire de double démarrage visuel pour Windows, et l'ajout d'une nouvelle entrée Windows se fait par un simple pointer-cliquer, exactement comme vous l'avez décrit .
Il y a beaucoup de ressources sur EasyBCD en ligne, donc je ne vais pas tout répéter ici. Fondamentalement, EasyBCD résume la complexité de
bcdedit.exe
et l'étend avec ses propres modules de chargeur de démarrage pour vous permettre de configurer des démarrages doubles avec d'autres versions (plus récentes ou plus anciennes) de Windows, ainsi que Linux, BSD, etc.Divulgation complète: je suis le principal auteur d'EasyBCD.
la source
Cela peut être pointé vers un fichier comme le fichier .vhd mais créé en tant que partition de disque et initialisé et attaché, ou monté à la volée et redémarré en tant que système d'exploitation. L'OS peut être caché dans une autre partition. une autre partition peut être cachée dans une autre partition et le système d'exploitation à l'intérieur. lorsque vous exécutez
bcdedit
pour être pointé vers un autre fichier .vhd, peu importe où il se trouve. Il se charge. Mon instructeur l'a montré en classe mais a échoué ou refusé de donner d'autres explicationsbcdedit
. Mais cela fonctionne pour cacher et exploiter un système d'exploitation entièrement fonctionnel.bcdboot e:\windows
bcdboot c:\windows
la source