Come utilizzare BCDEdit per eseguire il doppio avvio delle installazioni di Windows?


29

Quali sono i bcdeditcomandi necessari per configurare il doppio avvio tra diverse installazioni di Windows? 5

sfondo

Di recente ho installato Windows 8 su un disco rigido separato 1 . Ora che Windows 8 è installato, voglio riavviare su Windows 7.

Ho i miei due 2 dischi rigidi:

Schermata del gestore delle partizioni di Windows

Quindi puoi vedere che ho i miei due dischi, con le partizioni contenenti Windows:

  • Windows 7 : \\PhysicalDisk0(partizione 0 3 )
  • Windows 8 : \\PhysicalDisk2(partizione 1)

Quello che sto cercando di capire come è come usare bcdeditper istruire la cosa che avvia Windows che c'è un'altra installazione di Windows là fuori.

In esecuzione bcdeditora, mostra la configurazione corrente:

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

Non riesco a trovare alcuna documentazione sulla differenza tra Gestione avvio di Windows e Caricatore di avvio di Windows .

Documentazione

C'è della documentazione su Bcdedit:

Ma non spiegano come modificare i dati di configurazione dell'avvio binario.

Se dovessi indovinare , penserei che un Boot Manager di Windows istruisca il BIOS quale programma dovrebbe eseguire. Quel programma darebbe all'utente una serie di scelte di avvio. Ciò lascia a Windows Boot Loader una scelta di avvio particolare , che rappresenta una particolare installazione di Windows.

In tal caso, dovrei creare una nuova voce del caricatore di avvio di Windows .

Questo significa che potrei voler usare il /createparametro:

/creare

Crea una nuova voce di avvio:

bcdedit [/ negozio filename ] / creare [ id ] / d descrizione [/ applicazione tipoapp | / inherit [ apptype ] | / eredita DEVICE | / dispositivo ]

Quindi presumo una sintassi di:

>bcdedit /create /d "The old Windows 7" /application osloader

Dove applicationpuò essere uno dei seguenti tipi:

Apptype     Description
BOOTSECTOR  The boot sector application
OSLOADER    The Windows boot loader
RESUME      A resume application

Sfortunatamente, l'unica documentazione su osloaderè "Il caricatore di avvio di Windows" . Non vedo come ciò possa differenziare tra Windows 8 su un disco rigido e Windows 7 su un altro.

L'altro parametro possibile quando è /createun boot loader

>bcdedit /create /D "Windows Vista" /device "The Quick Brown Fox"

Purtroppo manca la documentazione per /device:

/dispositivo

Opzionale. Se id non è impostato su un identificatore noto, l'opzione utilizzata per specificare la nuova voce di avvio come voce aggiuntiva delle opzioni del dispositivo.

Dal momento che non ho impostato idun identificatore noto, devo impostare / dispositivo su "l'opzione utilizzata per specificare la nuova voce di avvio come voce aggiuntiva delle opzioni del dispositivo" . Conosco tutte quelle parole; sono tutti inglesi. Ma non ho idea di cosa stia dicendo; quelle parole in quell'ordine sembrano insensate.

Quindi sono un po 'ostacolato. Non voglio essere come Dan Stolts di Microsoft, che ha distrutto i suoi dischi rigidi nel tentativo di utilizzare BCDEdit :

Non ho trovato alcun contenuto particolarmente utile quando ho nascosto la macchina giocando con BCDEdit. Questo post sarebbe stato ok se ci fosse molto più dettagliato soprattutto sulla / set di comandi OSDevice, ecc Quindi, una volta ho avuto la mia macchina fissa, ho documentato la soluzione e le informazioni sono qui ... .

Voglio dire, se un ragazzo di Microsoft non riesce nemmeno a capire come usare BCDEdit per modificare il suo BCD, allora che possibilità ho?

Lettura bonus

Le note

  • 1 Poiché il programma di installazione di Windows 8 avrebbe danneggiato l'installazione di Windows 7, durante l'installazione ho deciso di scollegare il disco rigido "principale" . Questa è una spiegazione lunga del perché il programma di installazione di Windows 8 non ha rilevato l'installazione di Windows 7 esistente. Normalmente il programma di installazione avrebbe creato automaticamente le voci richieste per il doppio avvio. Non che il motivo per cui sto ponendo la domanda sia importante.
  • 2 In realtà ci sono tre unità, ma la terza è solo memoria di massa. L'esistenza di un terzo disco rigido è irrilevante per la domanda. Lo dico solo nel caso in cui qualcuno voglia sapere perché lo screenshot ha 3 dischi rigidi quando ne cito solo due.
  • 3 Ho iniziato arbitrariamente numerando le partizioni su "zero" ; per non implicare che le partizioni siano numerate a partire da zero. Cito solo le partizioni perché non vedo come qualsiasi bootloader possa fare il suo lavoro senza sapere in quale partizione e in quale cartella si trova un'installazione di Windows.
  • 4 Sto chiedendo di BCDEdit. Ho provato Visual BCD Editor . Sembra essere un editor BCD visivo . Vale a dire che è una GUI, ma utilizza ancora la stessa terminologia di BCDEdit e richiede la stessa conoscenza che BCD non documenta.
  • 5 Per semplicità supponiamo che tutte le installazioni di Windows tra cui voglio eseguire il dual-boot siano Windows Vista o successive, rendendole tutte compatibili con BCDEdit e il caricatore di avvio binario. L'alternativa richiederebbe approfondire la complessità del vecchio ntloader. Né sto chiedendo del doppio avvio su Linux; o come avviare un'immagine del disco rigido virtuale (vhd). Solo versioni moderne di Windows su hard disk esistenti nella stessa macchina.

Risposte:


16

Questa non è una risposta diretta alla domanda prima di "Background", ma punta a una soluzione alternativa per la creazione di voci caricatore per l'avvio di due (e più) Windows Vista e sistemi operativi successivi. Si prega di vedere anche la mia seconda risposta di seguito sulla critica della terminologia utilizzata in Visual BCD.

Nessuna guida, dispositivo, oggetto, elemento e blah, blah, blah.

Il mio background (salta se non ti interessa e vai alla soluzione di seguito):

Ho implementato Visual BCD Editor.

Durante il processo di implementazione ho dovuto leggere tutte le fonti disponibili su bcdedit e l'interfaccia del provider BCD WMI (interfaccia di programmazione, utilizzabile con C ++, C #). La documentazione di Microsoft è davvero scadente.

Nel BCD ci sono oggetti (caricatori, impostazioni, elementi del dispositivo). Non c'è documentazione sulle connessioni tra oggetti nonostante ci siano dipendenze.

Ci sono più di 140 (!) Elementi (proprietà) di oggetti BCD in Windows 7. Non conosco il significato di alcuni elementi - semplicemente non c'è documentazione.

In Windows 8 ci sono nuovi elementi: suppongo che il numero totale si stia avvicinando a 180 (!!). Nessuna documentazione

D'altra parte ci sono due utility molto potenti per manipolare il BCD: bcdboot e reagentc.

bcdboot - crea / corregge il caricatore predefinito anche BCD e l'ambiente di boot nel suo insieme!

reagentc - installa / disinstalla l'ambiente di recupero (winre.wim)

Entrambi gli strumenti non sono anche ben documentati.

Soluzione alternativa:

Non c'è quasi bisogno di bcdedit poiché usando solo bcdboot è possibile creare caricatori per Windows Vista e successivi sistemi operativi Windows: si crea un caricatore per il primo sistema operativo, che per l'ultimo e voilà è stato creato l'ambiente di avvio per un sistema dual / multi boot:

Supponendo che tu sia in Windows 8:

1. bcdboot f: \ windows (si associa a Windows 7 come nell'immagine in questione)

2. bcdboot c: \ windows (si associa a Windows 8)

Fatto !

Regola Microsoft di base per il processo di avvio: l'ambiente di boot (e BCD) dovrebbe essere sempre su [primo disco + partizione attiva]. (nella foto - Disco 2 => Primo disco nella sequenza di avvio del BIOS!)

Ultimo ma non meno importante, c'è l' utility bootsect per scrivere MBR e PBR (record di avvio principale e di partizione) - ora standard in Windows 8 (era disponibile solo in WinRE in precedenza).

Pertanto, utilizzando solo bootsect e bcdboot è possibile creare / correggere tutte le entità di avvio per un sistema a doppio avvio.

Penso che il processo di avvio per Vista e versioni successive sia descritto molto bene su molti siti Internet anche su Microsoft.com.

Nota:

Uno dei migliori siti su Windows BCD è il sito di Geoff Chappell - ci sono informazioni più dettagliate lì che su Microsoft.com. Gli utenti interessati possono trovare informazioni abbastanza utili lì e alcune note critiche sulla documentazione di bcdedit.


9

Quando ho formattato l'unità C: per reinstallare Windows, il record di avvio principale è stato eliminato e il programma di installazione di Windows 7 non è riuscito a ripristinarlo. Potrei usare uno strumento GUI bcdedit come Visual BCD Edit, ma perché dovrei installare qualcosa quando dovrebbe esserci un semplice comando nel programma di console bcdedit che può fare il lavoro? Dopo aver cercato molto nei file della guida in linea, ho rinunciato a bcdedit e ho trovato la risposta qui sepolta nelle digressioni. Per creare una voce di avvio per la seconda partizione devi usare bcdboot

Supponendo che tu sia in C: \ Windows:

1. bcdboot e: \ windows

2. bcdboot c: \ windows

Al riavvio, verrà visualizzato il menu di avvio di Windows con due voci per Windows 7. Se si seleziona la voce che si avvia in C: \ Windows, è possibile rinominare la voce per questa partizione con:

bcdedit / set {current} descrizione "Windows 7 (Partition 1)"

Ciò rende il sistema operativo avviato all'avvio la voce predefinita nel menu di avvio:

bcdedit / default {attuale}

Ciò posiziona il sistema operativo predefinito all'avvio come primo elemento nel menu di avvio

bcdedit / displayorder {default} / addfirst

Oppure potresti rendere il sistema operativo all'avvio il primo elemento nel menu di avvio:

bcdedit / dispalyorder {current} / addfirst

Ora riavvia e seleziona il secondo elemento nel menu di avvio che dovrebbe essere etichettato "Windows 7". Una volta avviato in E: \ Windows rinominare il sistema operativo avviato all'avvio:

bcdedit / set {current} descrizione "Windows 7 (Partition 2)"

Verifica che il menu di avvio funzioni correttamente e salva i dati bcd in una partizione in cui non è installato un sistema operativo:

bcdedit / export D: \ Saved_BCD_Settings \ SavedBCD

Se sbagli più tardi puoi ripristinare il menu di avvio del bcd con:

bcdedit / import D: \ Saved_BCD_Settings \ SavedBCD


Mio motociclista, stai solo ripetendo la mia risposta data un mese fa. -1.
Snayob,

@snayob, apprezzo le tue risposte (+1), ma Motorcycleboy approfondisce un po 'di più i comandi dopo aver creato i bootentries. Ora, qualcosa che manca in tutta questa discussione è ciò che il comando equivalente in bcdeditè per bcdboot e:\windows(vedi qui per la domanda)
Davor Josipovic

Non penso che ci sia un equivalente dei comandi bcdedit per "bcdboot e: \ windows" poiché bcdboot copia e ripara l'intero ambiente di boot (bootmgr + \ cartella di avvio + riparazioni BCD + aggiunge una voce per il sistema operativo specificato)
snayob

{current}non funziona.
Orienta il

5

Alcune note sulla critica nella domanda originale sull'uso della stessa terminologia in Visual BCD utilizzata da Microsoft per bcdedit.

Il concetto BCD è sviluppato da Microsoft. Viene fornito con una propria terminologia. Non penso di poterlo cambiare. Posso estenderlo solo.

Microsoft ha fornito due modi per accedere / modificare BCD:

  1. utilizzando bcdedit.exe - interfaccia della riga di comando
  2. Interfaccia provider WMI BCD - interfaccia programmatica

Entrambe le interfacce parlano di oggetti ed elementi BCD. Questo è un concetto generale utilizzato anche nella programmazione / computer come in altre aree umane. Potremmo andare anche alla filosofia che utilizza la terminologia di oggetti, proprietà e relazioni per descrivere il mondo e l'universo.

L'accesso al provider WMI di BCD è più flessibile in quanto offre al programmatore la possibilità di accedere a tutti gli oggetti e elementi in BCD e di operare su di essi liberamente.

Visual BCD fa pieno uso dell'interfaccia del provider WMI BCD e implementa l'accesso nello stesso modo in cui siamo abituati ad accedere al registro di Windows usando regedit.exe. Inoltre, lo strumento automatizza due attività principali: la creazione di caricatori e la riparazione a doppio avvio . Nessun altro strumento offre tale funzionalità automatica con un clic . Direi che questa è una nuova terminologia e un nuovo livello di astrazione . Non cambierei la base che Microsoft ha creato, posso solo costruirci sopra.

Gli utenti principianti fanno semplicemente clic su un pulsante e viene eseguita un'operazione complessa! Non è necessario lo sfondo! Non devi nemmeno sapere quante versioni di Windows hai installato - lo strumento cerca di trovarle tutte e quindi di creare caricatori per esse se i caricatori corrispondenti non sono già presenti in BCD - la terminologia utilizzata - "Crea caricatori di Windows mancanti" - I pensi che chiunque parli inglese potrebbe capire / cliccare / confermare un'operazione del genere o sbaglio?

La complessità di oggetti ed elementi in BCD è naturale in quanto il concetto copre l'avvio di sistemi operativi Windows nuovi e meno recenti, nonché sistemi operativi stranieri come Linux, Unix ecc. Inoltre, è un concetto generale per l'avvio di MBR e l'avvio di EFI su una varietà di dispositivi.

La parte più complessa di BCD è il concetto di dispositivo . Hai un dispositivo di partizione, un dispositivo ramdisk, un dispositivo di file, un dispositivo di individuazione: devi dedicare un po 'di tempo a capirlo e non penso che sia per il normale utente di Windows. I forum sono pieni di domande sulle partizioni del disco che è un argomento molto meno complesso. Molti utenti Windows non conoscono nemmeno la differenza tra partizione primaria e logica, ad esempio. È necessario conoscere le partizioni se si desidera eseguire il dual / multi boot. Devi comprare un terreno se vuoi costruire una seconda casa.

Il concetto BCD è lo stesso da Vista - solo i nuovi elementi sono definiti in Windows 7/8.

Penso che la struttura del registro per BCD sia stata scelta in quanto Windows implementa già questa interfaccia ed è un'interfaccia transazionale affidabile che ha dimostrato di funzionare negli anni. Se il concetto di registro di Windows in generale è un concetto buono o cattivo è un altro argomento.

Spetta al programmatore / sviluppatore creare un'interfaccia più user friendly. Ho iniziato con la stessa interfaccia - un equivalente GUI di bcdedit - in seguito l'interfaccia può essere astratta ad un livello superiore in base ai modelli di utilizzo. Una vista strutturata di BCD è già stata implementata. Questo è lo strato di astrazione di base.

Il prossimo livello di astrazione sarebbe quello di concentrarsi sulle relazioni tra oggetti poiché questo argomento non è coperto da Microsoft. Non è un compito facile. La nuova terminologia arriva con l'astrazione.


Capisco che BCD avvolge un sistema molto potente, con molte opzioni complesse. D'altra parte, penso di avere una domanda molto semplice, che molte persone hanno posto nel corso degli anni, ma che non sono mai stati in grado di risolvere. "Ho Windowsquaggiù e un altro Windowslaggiù. Come faccio a fare il boot tra di loro?". Piuttosto che un tutorial completo su tutte le opzioni di BCDEdit, speravo in comandi che possano risolvere solo questo (apparentemente semplice) problema. Forse quasi qualcosa di così semplice come msconfig, tranne che ti consente di passare a un'altra installazione di Windows e lo aggiungerà per te.
Ian Boyd,

Devo dire che il tuo strumento è molto più potente di EasyBCD.
Milind R

3

È necessario un BCDEdit /setcomando per configurare il volume di avvio. Quindi aggiungere la voce al menu del sistema operativo Windows Boot Manager chiamando il BCDEdit /displayordercomando.

bcdedit / set {ntldr} avvio del dispositivo

Identificherà anche la partizione dell'altro SO o il seguente comando

bcdedit / set {ntldr} partizione dispositivo = C:

La riga seguente rende avviabile la voce aggiungendola al menu

bcdedit / displayorder {ntldr} / addlast

È possibile verificare che la nuova voce venga visualizzata nel menu di avvio eseguendo il comando bcdedit /enum ACTIVEe cercando la voce Caricatore del sistema operativo Windows legacy.

Nota : il /createcomando viene utilizzato per aggiungere un sistema operativo non Microsoft alla voce del caricatore di avvio.

Per ulteriori informazioni al riguardo puoi leggere questo articolo di origine


Per quanto riguarda la tua domanda su " Differenza tra caricatore di avvio di Windows e gestore di avvio "

Da Wikipedia

Il processo di avvio di Windows NT inizia quando il computer trova un caricatore di avvio di Windows, una parte del sistema operativo Windows responsabile della ricerca di Microsoft Windows e dell'avvio. Sui sistemi IA-32 o x64, il boot loader si chiama Windows Boot Manager (BOOTMGR). Prima di Windows Vista, tuttavia, il caricatore di avvio era NTLDR.

Vedi anche su technet .


Visual BCD Editor è una versione GUI avanzata dell'utilità bcdedit di Windows.

È il primo strumento GUI che implementa la modifica completa dell'archivio BCD (Boot Configuration Data) di Windows 7 / Vista.

Pagina di download per l'editor BCD visivo.

Prova a riparare l'opzione nello strumento.


Informazioni su Boot Manager di Windows : Windows Boot Manager è fondamentalmente un mini sistema operativo che controlla la tua esperienza di avvio e ti consente di scegliere quale applicazione di avvio eseguire. Esistono varie applicazioni di avvio (ad esempio, Caricatore di avvio di Windows) e ognuna fa qualcosa di diverso. Ad esempio, un'applicazione Caricatore di avvio di Windows carica Windows. [...] Ad esempio, se hai due diverse versioni di Win7 installate su partizioni diverse, vedrai due voci di Windows Boot Loader. (preso da qui )
Davor Josipovic il

3

Anche se vecchio, voglio aggiungere delle risposte, perché molte delle risposte sopra contengono informazioni errate. Probabilmente funzionano, ma di certo non hai bisogno di un programma esterno, o addirittura bcdbootdi farlo. Per riferimento le informazioni corrette sono le seguenti:

Sfondo BCD rapido se nuovo

BCD è la configurazione di avvio di Windows. Contiene numerose sezioni, ognuna identificata da un nome (chiamato "descrizione") e un identificatore che assomiglia un po 'a questo: "{0743bb44-fda6-11e3-90c8-e3ee27f3aec6}".

Esistono diversi "identificatori noti" e bcdedit li utilizzerà in modo utile laddove possibile (a meno che non si usi l' opzione /v (dettagliata) con /enum). Assomigliano a questo: "{bootmgr}", "{memdiag}". Questi sono solo nomi abbreviati per identificatori completi, ma sono più facili da usare. Puoi usare entrambi.

Si possono elencare queste sezioni con il seguente comando (il "tutto" è facoltativo ma senza di essa non sarà possibile visualizzare un elenco completo): bcdedit /enum all.

Uscita tipica:

C:\Windows\system32>bcdedit /enum all

Windows Boot Manager
--------------------
identifier              {bootmgr}
device                  partition=\Device\HarddiskVolume1
description             Windows Boot Manager
locale                  en-US
inherit                 {globalsettings}
default                 {current}
resumeobject            {92b1a1b0-c023-11e3-b3f1-ec4d94108574}
displayorder            {current}
toolsdisplayorder       {memdiag}
timeout                 30

Windows Boot Loader
-------------------
identifier              {current}
device                  partition=C:
path                    \Windows\system32\winload.exe
description             Windows 7
locale                  en-US
inherit                 {bootloadersettings}
recoverysequence        {92b1a1b2-c023-11e3-b3f1-ec4d94108574}
recoveryenabled         Yes
osdevice                partition=C:
systemroot              \Windows
resumeobject            {92b1a1b0-c023-11e3-b3f1-ec4d94108574}
nx                      OptIn

Allo stesso modo, per facilità quando identifica i dispositivi, utilizzerà un formato simile \Device\HarddiskVolume2, ma riconoscerà la partizione con la sua lettera ("C:") se ne viene assegnato uno.

L'elenco prodotto da /enum allinizia con una sezione del boot manager del firmware opzionale (se la scheda madre ha EFI). Il nome abbreviato è "{fwbootmgr}" . Controlla la scelta iniziale di avvio EFI (se utilizzare il solito boot manager di Windows o dispositivi specifici). Generalmente puoi ignorare {fwbootmgr} se presente.

Di seguito è riportato "Windows Boot Manager" (identificatore "{bootmgr}" ). Questo è quello con cui lavorerai. Contiene la configurazione per il menu di base o qualunque altra cosa tu abbia all'avvio (se Windows Boot Manager funziona e può trovare BCD in primo luogo).

Sotto {bootmgr} ci sono un numero qualsiasi di sezioni "Caricatore di avvio di Windows" e possibilmente altre sezioni, ognuna delle quali controlla un'azione o un'opzione di avvio.

Configurare il dual boot usando bcdedit (non hai bisogno di nient'altro)

Per eseguire il dual boot, dite a bcdedit /copyuna voce del caricatore di avvio di Windows valida già nota per il vostro primo sistema operativo.

  • /copy per copiare una voce esistente
  • {current}è l' identificatore della voce che si desidera copiare. È un collegamento per l'elemento di avvio corrente. Se non è quello che si desidera eseguire il doppio avvio, utilizzare l'identificatore corretto per quello che si desidera. Il testo descrittivo per ciascuna voce ti aiuterà a trovare quello che desideri.
  • /d "Description for copied entry sarà la descrizione del nuovo oggetto

Farà una copia di quella voce, gli darà la descrizione dichiarata e risponderà con il nuovo identificatore che ha dato alla copia:

bcdedit /copy {current} /d "Copy of my current Windows Boot Loader"

The entry was successfully copied to {5599a3fc-e4ee-11e7-a5f3-c86000d0b92a}.

Questo crea una voce indipendente con il nome giusto, ora devi dirgli cosa fare. Poiché quasi nulla è cambiato nei recenti sistemi operativi, puoi semplicemente impostare il dispositivo e osdevice sulla tua partizione Win7 e probabilmente funzionerà. Se necessario, guardare l'output di / enum quando si avvia normalmente Win7 e copiare le voci che sembra aspettarsi. Ma di solito è sufficiente assegnare temporaneamente una lettera al secondo sistema operativo, come "Q", e quindi il comando è: bcdedit /set {NEW_IDENTIFIER} device partition=Q:o qualcosa del genere, e lo stesso per osdevice. bcdedit risolverà le lettere di unità, vedi sotto. È possibile eliminare la lettera di unità temporanea una volta che è stata utilizzata in bcd.

Quindi aggiungilo all'elenco delle voci in {bootmgr} usando bcdedit /displayorder {NEW_ID} /addlast, e - soprattutto - dì a bcd di visualizzare un menu di avvio usando bcdedit /set {bootmgr} displaybootmenu Yes.

Fatto.

Nota - è sicuro usare lettere di unità "dispari" o "sbagliate" in BCD ed è sicuro se anche l'output di / enum le contiene.

Per essere chiari, non devi preoccuparti che il tuo nuovo dispositivo venga identificato come Q: (o qualunque cosa sia) quando "dovrebbe essere C:". bcdedit memorizza l'ID del disco rigido, non la lettera. È puramente accettazione e visualizzazione di Q: essere d'aiuto. Se un dispositivo ha una lettera mostrerà la lettera per impostazione predefinita anziché l'ID del dispositivo, per comodità. Puoi vederlo rimuovendo o assegnando la lettera dal 2o SO in DISKPART o DISKMGMT.MSC e l'output di / enum tornerà immediatamente a un \ Dispositivo. In realtà ha salvato l'ID del disco rigido corretto e quando viene utilizzato per l'avvio, Windows troverà quel dispositivo: la lettera è semplice e non viene mai salvata.


Da dove vieni {0743bb44-fda6-11e3-90c8-e3ee27f3aec6}? Hai già copiato il {current} Caricatore di avvio di Windows ; qual è l'altra cosa di cui stai facendo una copia? (Non il Boot Manager di Windows, suppongo)
Ian Boyd,

Grazie. Posso confermare che ha funzionato come questo Windows 10 versione 1903 (build 18362). Ho avuto un'immagine della partizione NTFS del sistema operativo Windows 10 che ho ripristinato in una partizione su un altro computer, ho riavviato dal supporto di installazione al ripristino di Windows e assegnato la lettera del driver utilizzando diskpart. Quindi ha eseguito bcdedit / copy di {default} (no {current} in WinRE) e bcdedit / set di dispositivo e osdevice sulla nuova unità. Al riavvio mi è stata data la scelta dei sistemi operativi da eseguire e ha riavviato la vecchia immagine bene. Era Windows 10, che è l'avvio molto flessibile indipendentemente dal completo cambiamento HW.
Marko Kohtala,

2

In risposta alla domanda specifica dell'autore, come ribadito nei commenti (anche se differisce dalla sua domanda iniziale riguardo alle bcdedit.exesequenze per ottenere lo stesso risultato):

Forse quasi qualcosa di semplice come msconfig, tranne che ti consente di passare a un'altra installazione di Windows e lo aggiungerà per te.

EasyBCD è esattamente quello che stai cercando (gratuito per uso personale). È uno strumento di gestione visiva a doppio avvio per Windows e l'aggiunta di una nuova voce di Windows avviene con un clic e clic, esattamente come l'hai descritta .

Ci sono molte risorse su EasyBCD online, quindi non ripeterò tutto qui. Fondamentalmente EasyBCD racchiude la complessità bcdedit.exee la estende con i suoi moduli bootloader per consentire di configurare dual-boot con altre versioni (più recenti o precedenti) di Windows, oltre a Linux, BSD e altro.

Informativa completa: sono l'autore principale di EasyBCD.


-1
bcdedit
bcdboot
bcdedit /create

Questo può essere puntato su un file come .vhd ma creato come partizione del disco e inizializzato e allegato, oppure montato al volo e riavviato come sistema operativo. Il sistema operativo può essere nascosto all'interno di un'altra partizione. un'altra partizione può essere nascosta all'interno di un'altra partizione e sistema operativo al suo interno. quando corri bcdeditper essere indirizzato a un altro file .vhd, indipendentemente da dove si trova. Si carica. Il mio istruttore lo ha mostrato in classe ma non è riuscito o si è rifiutato di dare un'altra spiegazione bcdedit. Ma questo funziona per nascondere e utilizzare un sistema operativo completamente funzionale.

  1. bcdboot e:\windows
  2. bcdboot c:\windows
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.