Como utilizar o BCDEdit para instalações de duplo arranque Windows?
Quais são os comandos bcdedit
necessários para configurar o duplo boot entre diferentes instalações do Windows?5
Background
I recentemente instalei o Windows 8 num disco rígido separado1. Agora que o Windows 8 está instalado, quero voltar ao Windows 7.
Tenho os meus dois2 discos rígidos:
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
Assim podem ver que tenho os meus dois discos, com as partições que contêm o Windows:
- Windows 7* :
\PhysicalDisk0
(partição 03) - Janelas 8* :
\PhysicalDisk2
(partição 1)
O que estou a tentar descobrir é como usar bcdedit
para instruir o que arranca o Windows de que existe outra instalação do Windows por aí.
Correndo bcdedit
agora, mostra a configuração actual:
>bcdedit /create /d "The old Windows 7" /application osloader
Não consigo encontrar qualquer documentação sobre a diferença entre Windows Boot Manager e Windows Boot Loader*.
Documentação
Existe alguma documentação sobre Bcdedit
:
& - Technet: Command Line Reference - Bcdedit - Technet: Windows Automated Installation Kit - BCDEdit Opções de Linha de Comando - Whitepaper - BCDEdit Commands for Boot Environment (Word Document)
& Mas eles não explicam como editar os dados de configuração de arranque binário.
Se eu tivesse de adivinhar, pensaria que um Gerenciador de Boot do Windows instrui a BIOS que programa deve correr. Esse programa daria ao utilizador um conjunto de opções de arranque. Isso deixa Windows Boot Loader* ser uma escolha particular de arranque ** escolha** , que representa uma instalação particular do Windows.
Se for esse o caso, teria de criar uma nova entrada Windows Boot Loader*.
Isto significa que eu poderia querer usar o parâmetro /create
:
/criar
& > Cria uma nova entrada de arranque:
bcdedit [/ store filename] / criar [id] / d descrição [/ aplicação apptype | / inherit [apptype] | / inherit DEVICE | / dispositivo ]
Por isso assumo uma sintaxe de:
Apptype Description
BOOTSECTOR The boot sector application
OSLOADER The Windows boot loader
RESUME A resume application
Onde application
pode ser um dos seguintes tipos:
>bcdedit /create /D "Windows Vista" /device "The Quick Brown Fox"
Infelizmente, a única documentação sobre osloader
é “O carregador de arranque do Windows”. Não vejo como isso pode diferenciar entre Windows 8* num disco rígido, e Windows 7* noutro.
O outro parâmetro possível quando /create
um carregador de arranque é
Infelizmente falta a documentação para /device
:
/dispositivo
Opcional. Se o id não estiver definido para um identificador bem conhecido, a opção que é utilizada para especificar a nova entrada de arranque como uma entrada adicional de opções de dispositivo.
Como não defini id
para um identificador bem conhecido, devo definir /dispositivo* para “a opção que é utilizada para especificar a nova entrada de arranque como uma entrada adicional de opções de dispositivo”. Conheço todas essas palavras; são todas em inglês. Mas não faço ideia do que está a dizer; essas palavras nessa ordem parecem disparatadas.
Por isso, estou um pouco bloqueado. Não quero ser como Dan Stolts da Microsoft, que destruiu os seus discos rígidos tentando usar o BCDEdit :
Não encontrei nenhum conteúdo que tenha sido particularmente útil quando mangueei a minha máquina ao brincar com o BCDEdit. Este post teria sido bom se houvesse muito mais detalhe especialmente no comando /set OSDevice, etc. Assim que arranjei a minha máquina, documentei a solução e a informação é aqui… .
Quero dizer, se um tipo da Microsoft nem consegue perceber como usar o BCDEdit para editar o seu BCD, então que hipóteses tenho eu?
Leitura Bónus
- BCDEdit Opções de Linha de Comando
- Bcdedit
- Servidor 2008 R2 ou Sistema Windows 7 NÃO Iniciará Após Efectuar Alterações ao Gestor de Arranque Usando BCDEdit
- Bcdedit
- Servidor 2008 R2 ou Sistema Windows 7 NÃO Iniciará Após Efectuar Alterações ao Gestor de Arranque Usando BCDEdit
- [ Visual BCD Editor ]0x3&4
- [ Windows 7 e Windows 8 RTM Dual Boot Setup ]0x3&
Notas de rodapé
- 1 Uma vez que o instalador do Windows 8 teria danificado a instalação do meu Windows 7, Decidi desligar a ficha do meu “principal” disco rígido durante a instalação. O que é uma longa explicação de porque o instalador do Windows 8 não detectou a instalação do Windows 7 existente. Normalmente, o instalador teria criado automaticamente as entradas necessárias para o dual-boot. Não é que a raça que estou a fazer a pergunta seja importante.
- 2 Realmente existem três unidades, mas a terceira é apenas armazenamento a granel. A existência de um terceiro disco rígido é irrelevante para a pergunta. Só o menciono no caso de alguém querer saber porque é que a imagem de ecrã tem 3 discos rígidos, quando menciono apenas dois.
- 3 Eu comecei arbitrariamente a numerar as partições em “zero”; não querendo implicar que as partições sejam numeradas a partir de zero. Só menciono partições porque não vejo como é que qualquer carregador de arranque poderia fazer o seu trabalho sem saber em que partição, e em que pasta, se encontra uma instalação do Windows.
- 4 Estou a perguntar sobre o BCDEdit. Tentei Visual BCD Editor*. Parece ser um visual editor de BCD. Isto quer dizer que é uma GUI, mas ainda usa a mesma terminologia do BCDEdit, e requer o mesmo conhecimento que o BCD não documenta.
- 5 Por uma questão de simplicidade, vamos assumir que toda a instalação do Windows que eu quero fazer dual-boot entre o Windows Vista ou posterior, tornando-os todos compatíveis com o BCDEdit e o carregador de arranque binário. A alternativa exigiria aprofundar os meandros do antigo
ntloader
. Também não estou a perguntar sobre inicialização dupla para Linux; ou como arrancar para uma imagem de disco rígido virtual (vhd). Apenas versões modernas do Windows em discos rígidos existentes na mesma máquina.