การแก้ไขเมนู Windows Boot Loader

05.05.2021 หน้าต่าง

เราพบขั้นตอนหลักของการโหลดระบบปฏิบัติการหลังจากเปิดเครื่องหรือรีบูตคอมพิวเตอร์พบว่าพาร์ติชันดิสก์ใดที่เรียกว่าระบบ แอคทีฟและบูต และดูว่าไฟล์และองค์ประกอบ bootloader ใดบ้างที่อยู่ในนั้น

วันนี้เราจะแก้ไขการกำหนดค่าตัวเลือกการบูต Windows โดยตรง เราจะพูดถึงตัวจัดการการบูต Bootmgr สมัยใหม่ซึ่งปรากฏตัวครั้งแรกใน Windows Vista หรืออย่างแม่นยำยิ่งขึ้นเกี่ยวกับตัวแก้ไขที่เก็บข้อมูลระบบ BCD (ข้อมูลการกำหนดค่าการบูต) - bcdedit.exe และคำสั่งของมัน

ฉันต้องบอกว่า แก้ไขเมนูการบูตระบบปฏิบัติการไม่ได้เกิดขึ้นบ่อยขนาดนั้น ความต้องการนี้อาจเกิดขึ้นเมื่อคุณต้องการติดตั้งระบบปฏิบัติการหลายระบบบนคอมพิวเตอร์เครื่องเดียว หรือในกรณีฉุกเฉิน

ในบริบทของเนื้อหาที่เผยแพร่บนบล็อก มีการพบตัวอย่างการแก้ไขข้อมูลการกำหนดค่าการบูตหลายครั้งแล้ว ตัวอย่างเช่นในซึ่งอธิบายการโหลดระบบปฏิบัติการ Windows 7 ด้วยเคอร์เนลอื่น (แก้ไข) หรือเมื่อโหลดระบบปฏิบัติการจากดิสก์เสมือน

ความสามารถของ Windows GUI สำหรับการแก้ไขเมนู bootloader

ก่อนที่เราจะเริ่มดูคำสั่งหลักของตัวแก้ไขคอนโซล bcdedit เรามาดูกันว่ามีอะไรบ้าง ยูทิลิตี้กราฟิกให้ Windows สำหรับ แก้ไขเมนู bootloaderและตรวจสอบให้แน่ใจว่ามีข้อจำกัดอย่างมาก

หากคุณเปิดองค์ประกอบ "ระบบ" ใน "แผงควบคุม" หรือสิ่งที่เหมือนกันคือ "คุณสมบัติ" ในเมนูบริบท (ปุ่มเมาส์ขวา) "คอมพิวเตอร์" จากนั้น "ขั้นสูง" -> "การเริ่มต้นและการกู้คืน" -> “การตั้งค่า” หน้าต่าง “ดาวน์โหลดและการกู้คืน” จะเปิดขึ้น >

สิ่งเดียวที่คุณสามารถทำได้ในหน้าต่างนี้คือเลือกระบบที่บู๊ตตามค่าเริ่มต้นจากรายการดรอปดาวน์ของระบบปฏิบัติการ (หากมีหลายระบบ) และเปลี่ยนเวลาที่แสดงรายการระหว่างกระบวนการบู๊ต

ตัวเลือกที่สองสำหรับการแก้ไข BCD โดยใช้ GUI (อินเทอร์เฟซผู้ใช้แบบกราฟิก) คือสแน็ปอินการกำหนดค่าระบบ หากต้องการเรียกใช้ คุณต้องพิมพ์และเรียกใช้ msconfig ในหน้าต่าง Run หรือบนบรรทัดคำสั่ง >>

นอกเหนือจากตัวเลือกบางอย่างที่แอปเพล็ตระบบมีให้จากแผงควบคุมแล้ว คุณยังสามารถลบตัวเลือกการบูตที่ไม่ได้ใช้งานออกจากแท็บ Boot ในการกำหนดค่าระบบได้อีกด้วย นี่เป็นบางอย่างอยู่แล้ว แต่ยังไม่เพียงพอสำหรับการแก้ไข BCD เต็มรูปแบบ

ดังนั้นคุณจะต้องลืม GUI แล้วหันไปที่คอนโซล ทีมบรรณาธิการ

การแก้ไขคอนโซลของเมนูตัวจัดการการบูต Windows

ไม่มีอะไรซับซ้อน สิ่งสำคัญคือการเข้าใจว่าคุณกำลังทำอะไรอยู่และทำไม ตัวแก้ไข bcdedit.exe ซึ่งอยู่ในโฟลเดอร์ ...\Windows\System32 จะต้องเรียกใช้ด้วยสิทธิ์ของผู้ดูแลระบบ - คลิกขวาที่ "พร้อมรับคำสั่ง" -> "เรียกใช้ในฐานะผู้ดูแลระบบ"

หากไม่มีพารามิเตอร์ bcdedit จะพิมพ์ข้อมูลตัวเลือกการบูตทั้งหมดที่บันทึกไว้ในร้านค้า BCD >

ไม่มีประเด็นที่เป็นประโยชน์โดยเฉพาะในการแสดงความคิดเห็นในทุกบรรทัดที่เราเห็นในส่วนของหน้าจอที่นำเสนอ นอกจากนี้บางส่วนก็ชัดเจนโดยไม่มีคำอธิบาย ให้เราเน้นสิ่งที่อาจมีประโยชน์มากที่สุดในทางปฏิบัติ

ตัวระบุ - อยู่ในวงเล็บปีกกา () (ต้องใช้วงเล็บในคำสั่ง) หมายเลขบันทึก 36 ตัวอักษร 32 หลักซึ่งระบุพารามิเตอร์การบูตระบบปฏิบัติการ สำหรับระบบที่โหลดอยู่ในปัจจุบัน ตัวเลขจะถูกแทนที่ด้วย (ปัจจุบัน) ระบบที่บู๊ตตามค่าเริ่มต้นถูกกำหนดเป็น (ค่าเริ่มต้น)

เพื่อหลีกเลี่ยงการพิมพ์ตัวระบุที่ยาวบนแป้นพิมพ์ จะสะดวกมากที่จะใช้สำเนาข้อความของเอาต์พุต bcdedit ในการดำเนินการนี้คุณต้องคลิกขวาที่ใดก็ได้ในหน้าต่างบรรทัดคำสั่งเลือก "เลือกทั้งหมด" ในเมนูบริบทที่ปรากฏขึ้นแล้วกด "Enter" บนแป้นพิมพ์ ผลลัพธ์ที่คล้ายกัน แต่เลือกได้สามารถทำได้โดยเลือก "ทำเครื่องหมาย" ในเมนูบริบทจากนั้นเลือกบรรทัดที่ต้องการ จากนั้นเปิดตัวแก้ไขข้อความ "Notepad" และวางเนื้อหาของคลิปบอร์ดลงในไฟล์ใหม่

อุปกรณ์ - พาร์ติชันที่มีไฟล์บูตโหลดเดอร์ของระบบปฏิบัติการอยู่ ดังนั้นสำหรับส่วน "Windows Boot Manager" นี่คือพาร์ติชันระบบที่ใช้งานอยู่สำหรับส่วน "Windows Boot" จะเป็นพาร์ติชันสำหรับบูตของระบบปฏิบัติการเฉพาะ

คำอธิบาย – ชื่อของระบบปฏิบัติการที่แสดงในรายการระหว่างการบู๊ต

เส้นทาง - เส้นทางไปยัง OS bootloader;

ลำดับการแสดงผล, หมดเวลา - ตามลำดับซึ่งตัวเลือกจะแสดงในเมนูบูตและเวลาเป็นวินาทีในการแสดงรายการก่อนที่ระบบปฏิบัติการเริ่มต้นจะเริ่มโหลด

ในการเปลี่ยนค่าของพารามิเตอร์ใด ๆ คุณต้องรัน bcdedit ด้วยคีย์ที่เหมาะสม ตัวอย่างเช่นเราเปลี่ยนชื่อระบบปฏิบัติการในเมนู:
bcdedit /set (ID) คำอธิบาย “ชื่อระบบใหม่” โดยที่ (ID) เป็นตัวระบุรายการสำหรับระบบปฏิบัติการนี้ (นี่คือจุดที่การทดแทนจากไฟล์ข้อความที่บันทึกไว้มีประโยชน์มาก)

bcdedit /displayorder (ID1) (ID2) (ID3)… ระบุลำดับที่ตัวเลือกการบูตจะแสดงในเมนู

การดำเนินการที่เป็นไปได้กับหนึ่งระเบียน:
bcdedit /displayorder (ID) /addlast |เพิ่มก่อน |ลบ| – เพิ่มรายการต่อท้าย | จุดเริ่มต้นของรายการ | ลบ (จากเมนูเท่านั้น);

bcdedit /timeout XX – เวลาแสดงเมนูเป็นวินาที;

bcdedit /default (ID) - ระบุระบบที่จะบู๊ตตามค่าเริ่มต้น

การใช้คำสั่งตัวแก้ไข bcdedit ที่เป็นไปได้มากที่สุด

สิ่งแรกที่ควรทำก่อนเริ่มการดำเนินการใดๆ ด้วย BCD คือการสร้างสำเนาเนื้อหาของที่เก็บการกำหนดค่าการบูตระบบ:
bcdedit /export "C:\Backup\bcd-backup" โดยที่ C:\Backup\ เป็นโฟลเดอร์ที่เลือกแบบสุ่มสำหรับการจัดเก็บ และ bcd-backup เป็นชื่อไฟล์แบบสุ่มสำหรับสำเนาหน่วยเก็บข้อมูล

bcdedit /import "C:\Backup\bcd-backup" เป็นคำสั่งตรงกันข้าม กู้คืนเนื้อหาของที่เก็บการกำหนดค่าการบูตจากสำเนาของมัน

คุณสามารถสร้างรายการบูตใหม่ได้โดยใช้คำสั่งต่างๆ หากประเภทของระบบใหม่คล้ายกับระบบที่มีอยู่ ก็สมเหตุสมผลที่จะใช้คำสั่ง copy:
bcdedit /copy (ID) /d "ชื่อของระบบใหม่"

หากระบบปฏิบัติการปัจจุบันเป็น "ตัวอย่าง" คำสั่งจะมีลักษณะดังนี้:
bcdedit /copy (ปัจจุบัน) /d "ชื่อระบบใหม่" คำสั่งนี้จะเพิ่มรายการใหม่ลงในเมนูบู๊ตทันที

หากรายการบูตใหม่ถูกสร้างขึ้นตั้งแต่ต้น คุณต้องใช้:
bcdedit /create /d "ชื่อของระบบใหม่" /application osloader โดยที่ /application ระบุประเภทของแอปพลิเคชัน

เมื่อต้องการสร้างบันทึกการบูต NTLDR สำหรับบูตโหลดเดอร์แบบเดิม เช่น Windows XP:

bcdedit /สร้าง (ntldr) /d "Microsoft Windows XP"

นอกจากนี้ คุณต้องระบุว่าพาร์ติชันบูตระบบอยู่ที่พาร์ติชันดิสก์ใด:
bcdedit /set (ntldr) พาร์ติชันอุปกรณ์=X: โดยที่ X: คืออักษรชื่อไดรฟ์ของพาร์ติชันที่มีไฟล์ bootloader อยู่และเส้นทางไปยัง:
bcdedit /set (ntldr) เส้นทาง \ntldr

สามารถเพิ่มรายการลงท้ายรายการระบบปฏิบัติการในเมนูได้:
bcdedit /displayorder (ntldr) /addlast

สร้างรายการสำหรับการบูตระบบจากดิสก์เสมือน (VHD):

bcdedit /copy (ปัจจุบัน) /d “ระบบบน VHD” - สร้างรายการใหม่ตามรายการปัจจุบัน

เรียกใช้ bcdedit โดยไม่มีพารามิเตอร์และคัดลอกอันใหม่ (ID)
อุปกรณ์ bcdedit /set (ID) vhd=\DIR\filename.vhd - ระบุเส้นทางแบบเต็มไปยังดิสก์เสมือนซึ่งมีไฟล์ bootloader อยู่ (พาร์ติชันระบบ) อักษรระบุไดรฟ์ระบุไว้ใน ;
bcdedit /set (ID) osdevice vhd= \DIR\filename.vhd - ระบุตำแหน่งของดิสก์เสมือนด้วยไฟล์ระบบปฏิบัติการหลัก (พาร์ติชันสำหรับบูต)
bcdedit /displayorder (ID) /addlast - เพิ่มรายการระบบใหม่ที่ส่วนท้ายของรายการ

บทความเกี่ยวกับการติดตั้ง Windows 8.1 บนดิสก์เสมือนเป็นอีกทางเลือกหนึ่งในการสร้างรายการบูตที่เกี่ยวข้องใน BCD

สุดท้ายเรามาดูคำสั่งการลบ:

bcdedit /delete (ID) – การลบรายการออกจากที่เก็บข้อมูล

bcdedit / ลบค่า (ID)<тип_данных>– คำสั่งจะลบรายการข้อมูลออกจากรายการในที่เก็บข้อมูลการกำหนดค่าการบูต โดยที่<тип_данных>— พารามิเตอร์ที่ควรลบออกจากรายการที่ระบุ