BCDEdit'i çift önyükleme Windows kurulumlarında nasıl kullanabilirim?


29

bcdeditWindows'un farklı yüklemeleri arasında çift önyükleme ayarlamak için gereken komutlar nelerdir ? 5

Arka fon

Geçenlerde Windows 8'i ayrı bir sabit sürücüye 1 yükledim . Şimdi yüklü Windows 8, Windows 7'ye çift önyükleme yapmak istiyorum.

İki tane 2 sabit diskim var:

Windows bölüm yöneticisi ekran görüntüsü

Böylece, Windows içeren bölümlerle birlikte iki diskime sahip olduğumu görebilirsiniz:

  • Windows 7 : \\PhysicalDisk0(bölüm 0 3 )
  • Windows 8 : \\PhysicalDisk2(bölüm 1)

bcdeditWindows'u orada başka bir Windows yüklemesi olduğunu belirten şey konusunda bilgilendirmek için nasıl kullanılacağını anlamaya çalışıyorum .

Koşu bcdeditşimdi, geçerli yapılandırmayı gösterir:

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

Windows Önyükleme Yöneticisi ile Windows Önyükleme Yükleyicisi arasındaki fark hakkında herhangi bir belge bulamıyorum .

belgeleme

Bazı belgeler var Bcdedit:

Ancak ikili önyükleme yapılandırma verilerinin nasıl düzenleneceğini açıklamazlar.

Tahmin etmek zorunda olsaydım, bir Windows Önyükleme Yöneticisinin BIOS'a hangi programı çalıştırması gerektiğini söylediğini düşünürdüm . Bu program kullanıcıya bir önyükleme seçeneği sunar. Windows Önyükleme Yükleyicisini terk eden, belirli bir Windows kurulumunu temsil eden belirli bir önyükleme seçeneği olur .

Bu durumda, yeni bir Windows Önyükleyici Yükleyici girişi oluşturmam gerekiyor .

Bu, /createparametreyi kullanmak isteyebileceğim anlamına gelir :

/yaratmak

Yeni bir önyükleme girişi oluşturur:

Bcdedit [/ deposu dosya ] / oluşturmak [ id ] / d açıklama [/ uygulama apptype | / inherit [ apptype ] | / devralınan CİHAZ | / cihaz ]

Bu yüzden bir sözdizimi varsayalım:

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

applicationAşağıdaki türlerden biri nerede olabilir:

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

Maalesef sadece dokümantasyon yaklaşık osloaderolup "Windows önyükleme yükleyicisi" . Bunu arasındaki farkı nasıl ayırt görmüyorum Windows 8 bir sabit diskte ve Windows 7 diğerine.

/createBir önyükleyici olduğunda diğer olası parametre

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

Maalesef belgeler aşağıdakiler için eksik /device:

/cihaz

İsteğe bağlı. İd iyi bilinen bir tanımlayıcıya ayarlanmadıysa, yeni önyükleme girişini ek bir cihaz seçenekleri girişi olarak belirtmek için kullanılan seçenek.

Ben set vermedi beri idbilinen bir tanımlayıcı, ben ayarlamalısınız / cihazı için "ek bir cihaz seçenekleri girdi olarak yeni önyükleme girdisi belirtmek için kullanılır seçeneği" . Bütün bu kelimeleri biliyorum; hepsi İngiliz. Ama ne dediği hakkında hiçbir fikrim yok; Bu sırayla bu kelimeler saçma görünüyor.

Bu yüzden biraz stymied. BCDEdit'i kullanmaya çalışan sabit disklerini imha eden Microsoft'tan Dan Stolts gibi olmak istemiyorum :

BCDEdit ile oynayarak makinemi hortumladığımda özellikle yardımcı olacak hiçbir içerik bulamadım. Özellikle OSDevice / set komutunda çok daha fazla ayrıntı olsaydı bu mesaj daha iyi olurdu. Bu yüzden makinemi tamir ettiğimde çözümü belgeledim ve bilgi burada… .

Yani, bir Microsoft adamı BCDEdit'i BCD'sini düzenlemek için nasıl kullanacağını bile bulamıyorsa, hangi şansa sahibim?

Bonus Okuma

Dipnotlar

  • 1 Windows 8 yükleyici, Windows 7 yüklememe zarar vereceğinden , yükleme sırasında "ana" sabit diskimi çıkarmaya karar verdim . Windows 8 yükleyicisinin neden mevcut Windows 7 yüklemesini algılamadığını açıklayan uzun bir açıklama . Normalde yükleyici, çift önyükleme için gerekli girişleri otomatik olarak yaratırdı. Bu soruyu sormamın nedeni önemli değil.
  • 2 Gerçekten üç sürücü var, ancak üçüncüsü sadece toplu depolama. 3. bir sabit sürücünün varlığı soru ile alakasız. Sadece iki tanesinin ekran görüntüsünün neden 3 sabit diske sahip olduğunu bilmek istemesi durumunda söylüyorum.
  • 3 Bölümleri rasgele "sıfır" olarak numaralamaya başladım ; bölümlerin sıfırdan başlayarak numaralandırıldığı anlamına gelmez. Sadece bölümlerden bahsediyorum çünkü herhangi bir boot-loader'ın hangi bölüm ve hangi klasörde bir Windows kurulumunun bulunduğunu bilmeden işini nasıl yapabildiğini göremiyorum.
  • 4 BCDEdit hakkında soruyorum. Visual BCD Editor'ı denedim . Görsel bir BCD editörü gibi görünüyor . Bunun bir GUI olduğunu, ancak yine de BCDEdit ile aynı terminolojiyi kullandığını ve BCD'nin belgelemediği bilgiyi gerektirdiğini söylemek.
  • 5 Basitlik uğruna, arasında çift önyükleme yapmak istediğim tüm Windows kurulumunun Windows Vista veya üstü olduğunu ve hepsinin BCDEdit ve ikili önyükleme yükleyicisiyle uyumlu olduklarını varsayıyoruz. Alternatif, eskinin inceliklerine dalmayı gerektirir ntloader. Ne de Linux'a çift önyükleme hakkında sormuyorum; veya bir Sanal Sabit Sürücü (vhd) görüntüsünün nasıl önyükleneceği. Aynı makinedeki mevcut sabit sürücülerde Windows'un yalnızca modern sürümleri.

Yanıtlar:


16

Bu, "Arka Plan" dan önceki soruya doğrudan bir cevap değildir, ancak iki (ve daha fazla) Windows Vista ve sonraki işletim sistemlerini başlatmak için yükleyici girdileri oluşturmak için alternatif bir çözüme işaret eder. Lütfen Visual BCD'de kullanılan terminoloji eleştirisi hakkında aşağıdaki ikinci cevabımı da inceleyiniz.

Kılavuz, cihaz, nesne, element ve filan, filan, filan yok.

Geçmişim (ilgilenmiyorsanız atlayın ve aşağıdaki çözüme gidin):

Visual BCD Editor'ı uyguladım.

Uygulama sürecinde bcdedit ve WMI BCD Provider arayüzü (programlama arayüzü, C ++, C # ile kullanılabilir) ile ilgili tüm kaynakları okumak zorunda kaldım. Microsoft'tan gelen belgeler gerçekten zayıf.

BCD'de nesneler var (yükleyiciler, ayarlar, cihaz elemanları). Bağımlılık olmasına rağmen nesneler arasındaki bağlantılar hakkında hiçbir belge yoktur.

Windows 7'de BCD nesnelerinin 140 (!) Öğesi (özellikleri) var. Bazı öğelerin anlamını bilmiyorum - sadece hiçbir belge yok.

Windows 8'de yeni elemanlar var - sanırım şu an toplam sayı 180'e yaklaşıyor (!!). Belge yok.

Öte yandan, BCD'yi manipüle etmek için çok güçlü iki yardımcı program vardır: bcdboot ve reagentc.

bcdboot - varsayılan yükleyiciyi de oluşturur / düzeltir, ayrıca BCD ve bir bütün olarak önyükleme ortamı!

reagentc - kurtarma ortamını yükler / kaldırır (winre.wim)

Her iki araç da çok iyi belgelenmemiş.

Alternatif çözüm:

Windows Vista ve daha sonraki Windows işletim sistemleri için yükleyiciler oluşturabileceğiniz sadece bcdboot kullanarak bcdedit'e neredeyse hiç gerek yok - en erken işletim sistemi için bir yükleyici oluşturursunuz, en son işletim sistemi ve bir çift / çoklu önyükleme sistemi için önyükleme ortamı oluşturduğunuzdan daha fazla:

Windows 8’de olduğunuzu varsayarak:

1. bcdboot f: \ windows (bu, resimdeki gibi Windows 7 ile eşleşir )

2. bcdboot c: \ windows (bu, Windows 8 ile eşleşir )

Yapıldı!

Önyükleme işlemi için temel Microsoft kuralı: Önyükleme ortamı (ve BCD) her zaman [birinci disk + etkin bölüm] üzerinde olmalıdır. (resimde - Disk 2 => BIOS önyükleme sırasındaki ilk disk!)

Sonuncusu fakat en az değil, MBR ve PBR (ana ve bölüm önyükleme kaydı) yazmak için bootsect yardımcı programı var - şimdi Windows 8'de standart (yalnızca daha önce WinRE'de mevcuttu).

Bu nedenle, yalnızca bootect ve bcdboot kullanılarak ikili önyükleme sistemi için tüm önyükleme varlıkları oluşturulabilir / düzeltilebilir.

Sanırım Vista ve sonraki sürümleri için başlatma işlemi Microsoft.com'da bile birçok internet sitesinde çok iyi tanımlanmış.

Not:

Windows BCD ile ilgili en iyi sitelerden biri Geoff Chappell'in sitesi - Microsoft.com’da olduğundan daha ayrıntılı bilgi var. İlgilenen kullanıcılar burada oldukça yararlı bilgiler bulabilir ve bcdedit belgelerine ilişkin bazı kritik notlar bulabilir.


9

C: sürücüsümü Windows'u yeniden yüklemek üzere biçimlendirdiğimde ana önyükleme kaydı silindi ve Windows 7 yükleyici geri yükleyemedi. Visual BCD Edit aracı gibi bir GUI bcdedit aracı kullanabilirim, ancak bcdedit konsol programında işi yapabilecek basit bir komut olduğunda neden bir şey yüklemem gerekiyor? Çevrimiçi yardım dosyaları arasında çok arama yaptıktan sonra bcdedit'ten vazgeçtim ve cevabını burada bulunan ifadelere gömdüm. İkinci bölüm için bir önyükleme girişi oluşturmak için bcdboot kullanmanız gerekir.

C: \ Windows'ta olduğunuzu varsayalım:

1. bcdboot e: \ pencereler

2. bcdboot c: \ pencereler

Yeniden başlattığınızda, Windows 7 için iki girişle birlikte Windows önyükleme menüsü sunulur. C: \ Windows'a önyükleme yapan girişi seçerseniz, bu bölümün girişini şu şekilde yeniden adlandırabilirsiniz:

bcdedit / set {geçerli} açıklama "Windows 7 (Bölüm 1)"

Bu, başlangıçta önyükleme menüsündeki önyükleme menüsündeki varsayılan giriş olmasını sağlar:

bcdedit / default {current}

Bu, varsayılan işletim sistemini başlangıçta önyükleme menüsünde ilk öğeye yerleştirir

bcdedit / displayorder {default} / addfirst

Veya başlangıçta işletim sistemini önyükleme menüsünde ilk öğe haline getirebilirsiniz:

bcdedit / dispalyorder {current} / addfirst

Şimdi yeniden başlatın ve önyükleme menüsünde "Windows 7" olarak etiketlenmesi gereken ikinci öğeyi seçin. E: \ Windows'a önyüklendikten sonra başlangıçta önyüklenen işletim sistemini yeniden adlandırın:

bcdedit / set {geçerli} açıklama "Windows 7 (Bölüm 2)"

Önyükleme menüsünün düzgün çalıştığını test edin ve bcd verilerini, üzerinde işletim sistemi yüklü olmayan bir bölüme kaydedin:

bcdedit / export D: \ Saved_BCD_Ayarlar \ SavedBCD

Daha sonra karışırsanız, bcd boot menüsünü şu şekilde geri yükleyebilirsiniz:

bcdedit / import D: \ Saved_BCD_Ayarlar \ SavedBCD


Motosikletçim sadece bir ay önce verilen cevabımı tekrarlıyorsun. -1.
snayob

@snayob, cevaplarınıza değer veriyorum (+1), ancak Motorcycleboy bir tane bootentries oluşturduktan sonra komutlar hakkında biraz daha ayrıntılı bilgi veriyor. Şimdi, bütün bu tartışmada eksik bir şey eşdeğer komut ne var bcdeditiçindir bcdboot e:\windows(bkz burada soru için)
Davor Josipoviç

Bcdboot tüm önyükleme ortamını kopyalayıp onarırken "bcdboot e: \ windows" için bir bcdedit komutunun eşdeğeri olduğunu sanmıyorum (bootmgr + \ boot klasörü + onarımları BCD + belirtilen işletim sistemi için bir giriş ekler)
snayob

{current}çalışmıyor.
şark

5

Orijinal bcde, Microsoft'un bcdedit için kullandığı gibi Visual BCD'de aynı terminolojinin kullanılmasıyla ilgili eleştirmen üzerine bazı notlar.

BCD konsepti, Microsoft tarafından geliştirilmiştir. Kendi terminolojisiyle geliyor. Bunu değiştirebileceğimi sanmıyorum. Sadece uzatabilirim.

Microsoft, BCD’ye erişmek / düzenlemek için iki yol verdi:

  1. bcdedit.exe kullanarak - komut satırı arayüzü
  2. BCD WMI Sağlayıcı arayüzü - program arayüzü

Her iki arayüz de BCD objeleri ve elemanları hakkında konuşur. Bu, diğer insan alanlarında olduğu gibi programlama / bilgisayarlarda da kullanılan genel bir kavramdır. Dünyayı ve evreni tanımlamak için nesnelerin terminolojisini, özelliklerini ve ilişkilerini kullanan felsefeye bile gidebiliriz.

BCD WMI sağlayıcısı erişimi, bir programcıya BCD'deki her nesneye ve öğeye erişme ve üzerinde serbestçe işlem yapma imkanı verdiği için daha esnektir.

Visual BCD, BCD WMI Sağlayıcı Arayüzünü tam olarak kullanır ve regedit.exe kullanarak Windows kayıt defterine erişmek için kullandığımız şekilde erişim sağlar. Ayrıca, araç iki ana görevi otomatikleştirir - yükleyici oluşturma ve çift önyükleme onarımı . Başka hiçbir araç böyle bir tıklama otomatik işlevsellik sunmaz . Bunun yeni terminoloji ve yeni soyutlama seviyesi olduğunu söyleyebilirim . Microsoft'un yarattığı tabanı değiştirmezdim, sadece üzerine kurabilirim.

Acemi kullanıcılar sadece bir düğmeye tıklarlar ve karmaşık bir işlem gerçekleştirilir! Arka plan gerekmez! Hatta kaç tane Windows sürümü kurduğunuzu bilmek zorunda değilsiniz - araç hepsini bulmaya çalışır ve ardından BCD'de zaten mevcut değilse yükleyiciler oluşturmaya çalışır - kullanılan terminoloji - "Eksik Windows yükleyicilerini yarat" - I İngilizce konuşan herkes böyle bir işlemi anlayabilir / tıklayabilir / onaylayabilir mi yoksa yanlış mıyım?

Nesnelerin ve unsurların BCD'deki karmaşıklığı, konseptin daha yeni ve daha eski Windows işletim sistemlerini ve Linux, Unix gibi yabancı işletim sistemlerini önyüklemesini kapsadığı için doğaldır. Ayrıca MBR ve çeşitli aygıtlarda EFI önyüklemesi için genel bir konsepttir.

BCD'nin en karmaşık kısmı cihaz konseptidir . Bölümleme aygıtınız, ramdisk aygıtınız, dosya aygıtınız, aygıt konumlandırmanız var - bunu anlamak için biraz zaman harcamanız gerekir ve bunun normal Windows kullanıcısı için olduğunu sanmıyorum. Forumlar, daha az karmaşık bir konu olan disk bölümleriyle ilgili sorularla doludur. Çoğu Windows kullanıcısı, örneğin birincil ve mantıksal bölüm arasındaki farkı bilmez bile. Çift / çoklu önyükleme yapmak istiyorsanız bölümleri bilmeniz gerekir. İkinci bir ev inşa etmek istiyorsanız arsa satın almalısınız.

BCD konsepti Vista'dan beri aynıdır - yalnızca Windows 7 / 8'de yeni öğeler tanımlanmıştır.

BCD için kayıt defteri yapısının Windows zaten bu arayüzü uyguladığı için seçildiğini ve yıllar boyunca çalıştığı kanıtlanmış güvenilir bir işlem arayüzü olduğunu düşünüyorum. Windows kayıt defteri kavramı genel olarak iyi veya kötü bir kavram ise başka bir konudur.

Daha kullanıcı dostu bir arayüz oluşturmak programcı / geliştiriciye kalmıştır. Aynı arayüzü - bcdedit'in GUI eşdeğeri - vermeye başladım, daha sonra arayüz kullanım modellerine göre daha yüksek bir seviyede soyutlanabilir. BCD'nin yapısal bir görünümü zaten uygulanmıştır. Bu temel soyutlama katmanıdır.

Bir sonraki soyutlama seviyesi, bu konu Microsoft tarafından ele alınmadığı için nesneler arasındaki ilişkilere odaklanmak olacaktır. Kolay bir iş değil. Yeni terminoloji soyutlama ile birlikte gelir.


anlıyorum ki BCD, çok karmaşık seçeneklere sahip çok güçlü bir sistemi tamamlıyor. Öte yandan, sanırım bir çok insanın yıllar boyunca sorduğu çok basit bir sorum var - ama asla çözülemedi. " Windowsburada bir tane var, bir tane Windowsdaha var. Aralarında nasıl çizerim?". BCDEdit'in tüm seçenekleri hakkında tam bir öğretici olmaktansa, bu (yalnızca basit görünen) sorunu çözebilecek komutları umuyordum. Belki de neredeyse basittir msconfig, ancak başka bir Windows kurulumuna göz atmanıza izin verir ve sizin için ekler.
Ian Boyd

Söylemeliyim ki, aletiniz EasyBCD'den çok daha güçlü.
Milind R

3

BCDEdit /setÖnyükleme birimini yapılandırmak için bir komuta ihtiyacınız var . Ardından, BCDEdit /displayorderkomutu çağırarak girişi Windows Önyükleme Yöneticisi işletim sistemi menüsüne ekleyin .

bcdedit / set {ntldr} aygıt önyüklemesi

Diğer işletim sisteminin bölümünü veya aşağıdaki komutu da tanımlayacaktır.

bcdedit / set {ntldr} aygıt bölümü = C:

Aşağıdaki satır girişi menüye ekleyerek önyüklenebilir hale getirir

bcdedit / displayorder {ntldr} / addlast

Komutu çalıştırarak bcdedit /enum ACTIVEve Windows Legacy OS Loader girişini arayarak yeni girişin önyükleme menüsünde görüneceğini doğrulayabilirsiniz .

Not : /createkomut, yükleyici girişini önyüklemek için Microsoft'a ait olmayan bir işletim sistemi eklemek için kullanılır.

Bununla ilgili daha fazla bilgi için bu kaynak makaleyi okuyabilirsiniz.


"Hakkındaki soru İlişkin Windows Önyükleme yükleyici ve Önyükleme yöneticisi arasında Fark "

Gönderen wikipedia

Windows NT başlatma işlemi, bilgisayar bir Windows önyükleme yükleyicisi bulduğunda başlar, Windows işletim sisteminin bir kısmı Microsoft Windows'u bulmak ve başlatmaktan sorumludur. IA-32 veya x64 sistemlerinde, önyükleyici, Windows Önyükleme Yöneticisi (BOOTMGR) olarak adlandırılır. Ancak Windows Vista'dan önce, önyükleyici NTLDR idi.

Ayrıca bkz TechNet'teki .


Visual BCD Editor , Windows bcdedit yardımcı programının gelişmiş bir GUI sürümüdür.

Windows 7 / Vista Önyükleme Yapılandırma Verileri (BCD) deposunun tam düzenlemesini uygulayan ilk GUI aracıdır.

Görsel BCD editörü için indirme sayfası .

Araçtaki seçeneği tamir etmeye çalışın.


Windows Önyükleme Yöneticisi Hakkında : Windows Önyükleme Yöneticisi temel olarak önyükleme deneyiminizi kontrol eden ve hangi önyükleme uygulamasının çalıştırılacağını seçmenizi sağlayan mini bir işletim sistemidir. Çeşitli önyükleme uygulamaları (örneğin, Windows Önyükleme Yükleyicisi) vardır ve her biri farklı bir şey yapar. Örneğin, bir Windows Önyükleme Yükleyicisi uygulaması Windows'u yükler. [...] Örneğin, farklı bölümlerde yüklü iki farklı Win7 sürümünüz varsa, iki Windows Önyükleme Yükleyicisi girişi göreceksiniz. ( buradan alınır )
Davor Josipovic

3

Eski olmasına rağmen, cevapları eklemek istiyorum, çünkü yukarıdaki cevapların çoğu yanlış bilgi içeriyor. Muhtemelen çalışırlar, ancak kesinlikle harici bir programa, hatta bile bcdbootyapmanıza gerek yok. Referans için doğru bilgiler aşağıdaki gibidir:

Hızlı BCD arkaplanı yeni ise

BCD, Windows önyükleme yapılandırmasıdır. Her biri bir adla ("açıklama" olarak adlandırılır) tanımlanmış çok sayıda bölüm ve biraz buna benzeyen bir tanımlayıcı içerir: "{0743bb44-fda6-11e3-90c8-e3ee27f3aec6}".

Birkaç "tanınmış tanımlayıcı" vardır ve bcdedit bunları kullanabileceği bir yerde kullanacaktır /v ((ayrıntılı) seçeneğini ile kullanmadığınız sürece /enum). Şöyle görünüyorlar: "{bootmgr}", "{memdiag}". Bunlar tam tanımlayıcılar için sadece kısa yol isimleridir, ancak çalışmak daha kolaydır. İkisini de kullanabilirsiniz.

Sen ( "tüm" isteğe bağlıdır ama onsuz tam bir listesini görmek olmaz) aşağıdaki komutla bu bölümleri listeleyebilirsiniz: bcdedit /enum all.

Tipik çıktı:

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

Benzer şekilde, cihazları tanımladığında kolaylık olması için, benzer bir format kullanacak \Device\HarddiskVolume2, ancak eğer atanmışsa bölümü harfiyle ("C:") tanıyacaktır.

Üretilen liste /enum allisteğe bağlı bir ürün yazılımı önyükleme yöneticisi bölümü ile başlar (anakartınızda EFI varsa). Kısa yol adı "{fwbootmgr}" . İlk EFI önyükleme seçimini denetler (normal Windows önyükleme yöneticisini veya belirli aygıtları kullanmak isteyip istemediğinizi). Genel olarak, eğer varsa {fwbootmgr} 'ı yok sayabilirsiniz.

Bunun altında "Windows Önyükleme Yöneticisi" ( "{bootmgr}" tanımlayıcısı ) var. Bu çalışacağın şey. Temel menü için yapılandırma veya başlangıçta ne başlattıysanız içerir (Windows Önyükleme Yöneticisi çalışıyorsa ve ilk önce BCD'yi bulabilirse).

{Bootmgr} altında, her biri bir eylem veya önyükleme seçeneğini denetleyen herhangi bir sayıda "Windows Önyükleyici" bölümü ve muhtemelen başka bölümler bulunur.

Bcdedit kullanarak çift önyükleme ayarlama (başka bir şeye ihtiyacınız yok)

İkili önyükleme yapmak için, bcdedit'e , ilk işletim sisteminiz için /copybilinen iyi bir Windows Önyükleme Yükleyicisi girişini söyleyin .

  • /copy varolan bir girişi kopyalamak için
  • {current}olan tanımlayıcı kopyalamak istediğiniz girişin. Geçerli önyükleme öğesi için bir kısayol. Çift önyükleme yapmak istemediğiniz şey bu değilse, yapmak istedikleriniz için doğru tanımlayıcıyı kullanın. Her giriş için açıklama metni, istediğinizi bulmanıza yardımcı olacaktır.
  • /d "Description for copied entry Yeni öğenin açıklaması olacak

Bu girişin bir kopyasını çıkartacaktır, belirtilen açıklamayı yapmalı ve kopyaya verdiği yeni tanımlayıcıya cevap vermelidir:

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

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

Bu doğru adla bağımsız bir giriş oluşturur, şimdi ne yapacağını söylemelisin. Son işletim sistemlerinde neredeyse hiç bir şey değişmediği için, aygıtı ve işletim aygıtını yalnızca Win7 bölümünüze ayarlayabilirsiniz ve muhtemelen çalışacaktır. Gerekirse, normal olarak Win7'ye önyükleme yaparken / enum çıktısına bakın ve beklendiği gibi girişleri kopyalayın. Ancak, genellikle 2. işletim sisteminize geçici olarak "Q" gibi bir mektup atamanız yeterlidir ve sonra komut: bcdedit /set {NEW_IDENTIFIER} device partition=Q:ya da bir şey için aynıdır osdevice. bcdedit sürücü harflerini sıralar, aşağıya bakınız. Temp sürücü harfini bcd olarak kullandıktan sonra silebilirsiniz.

Sonra onu kullanarak {bootmgr} içindeki girişler listesine ekleyin bcdedit /displayorder {NEW_ID} /addlastve - crucally - bcd'yi kullanarak bir açılış menüsü göstermesini isteyin bcdedit /set {bootmgr} displaybootmenu Yes.

Bitti.

Not - BCD'de "tek" veya "yanlış" sürücü harflerini kullanmak güvenlidir ve / enum çıktısı bunları da içeriyorsa güvenlidir.

Açık olmak gerekirse, yeni cihazınızın "C:" olması gerektiğinde Q: (veya her ne ise) olarak tanımlanması konusunda endişelenmenize gerek yok. bcdedit, harfi değil sabit sürücü kimliğini saklar. Tamamen Q’yu kabul etmek ve göstermek: yardımcı olmak. Bir cihazda bir harf varsa, kolaylığı için cihaz kimliği yerine harfi varsayılan olarak gösterir. Bunu DISKPART veya DISKMGMT.MSC içindeki 2. işletim sisteminden gelen mektubu kaldırarak veya atayarak görebilirsiniz. Aslında doğru sabit sürücü kimliğini kaydetti ve önyükleme yapmak için kullanıldığında, Windows bu aygıtı bulacak - mektup kolaylık için ve gerçekten kaydedilmedi.


Nereden aldın {0743bb44-fda6-11e3-90c8-e3ee27f3aec6}? {current} Windows Önyükleme Yükleyicisini zaten kopyaladınız ; kopyaladığın diğer şey ne? (Sanırım Windows Önyükleme Yöneticisi değil )
Ian Boyd

Teşekkür ederim. Bunun, Windows 10 sürüm 1903 (18362) sürümünde çalıştığını onaylayabilirim. Windows 10 işletim sistemi NTFS bölümünün bir görüntüsüne sahiptim Başka bir makinedeki bir bölüme geri yükledim, kurulum ortamından Windows Kurtarma'ya kadar yeniden başlattım ve diskpart kullanarak sürücü harfi atadım. Ardından {default} bcdedit / kopyası (WinRE'de {current} yok) ve bcdedit / cihaz ve osdevice grubunu yeni sürücüye yaptınız. Yeniden başlatma sırasında çalıştırmak için işletim sistemi seçimi verildi ve eski görüntüyü yeniden başlattı. Windows 10'du; bu, tüm HW değişikliklerinden bağımsız olarak çok esnek bir önyükleme idi.
Marko Kohtala

2

Yazarın, yorumlarda da belirtildiği gibi spesifik soruya cevaben ( bcdedit.exeaynı şeyi gerçekleştirmek için dizilere ilişkin ilk sorusundan farklı olmasına rağmen ):

Belki de msconfig kadar basit bir şey olabilir, ancak başka bir Windows kurulumuna göz atmanıza izin verir ve sizin için ekler.

EasyBCD tam olarak aradığınız şeydir (kişisel kullanım için ücretsiz). Bu, Windows için görsel bir çift önyükleme yöneticisi aracıdır ve yeni bir Windows girişi eklemek, tam olarak tanımladığınız gibi bir tıkla ve tıklattır .

EasyBCD'de çevrimiçi olarak çok fazla kaynak var, bu yüzden burada her şeyi tekrarlamayacağım. Temel olarak EasyBCD bcdedit.exe, Windows'un diğer (daha yeni veya daha eski) sürümlerinin yanı sıra Linux, BSD ve diğer sürümlerle çift çizme ayarlamanıza izin vermek için karmaşıklığını tamamlar ve kendi önyükleyici modülleriyle genişletir.

Tam açıklama: Ben EasyBCD'nin birincil yazarıyım.


-1
bcdedit
bcdboot
bcdedit /create

Bu, .vhd dosyası gibi bir dosyaya işaret edebilir, ancak bir diskpart bölümü olarak oluşturulabilir ve başlatılabilir ve eklenebilir veya anında monte edilebilir ve bir işletim sistemi olarak yeniden başlatılabilir. İşletim sistemi başka bir bölümün içine gizlenebilir. başka bir bölüm, başka bir bölümün içine ve içindeki OS'ye gizlenebilir. bcdeditNerede olursanız olun başka bir .vhd dosyasına yönlendirilmek için çalıştırdığınızda . Yüklendi. Eğitmenim bunu sınıfta gösterdi ancak başarısız oldu veya başka bir açıklama yapmayı reddetti bcdedit. Ancak bu tamamen işlevsel bir işletim sistemi gizlemek ve çalıştırmak için çalışır.

  1. bcdboot e:\windows
  2. bcdboot c:\windows
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.