Ubuntu ได้รับการติดตั้งในโหมด EFI แต่ Windows ได้รับการติดตั้งในโหมด BIOS เดิม
GRUB ไม่สามารถ chainload bootloader BIOS รุ่นเก่าเมื่ออยู่ในโหมด EFI และในทางกลับกัน ซึ่งหมายความว่า Windows ไม่ได้ถูกเพิ่มในเมนูการบูตของ GRUB
เพื่อแก้ไขปัญหานี้ ต้องติดตั้ง GRUB ใหม่ในโหมด BIOS เดิม หรือการติดตั้ง Windows จำเป็นต้องแปลงเป็นบูตโดยใช้ EFI
ในการตรวจจับ Windows Boot Manager ในโหมดการบูต EFI GRUB จะค้นหา EFI System Partitions (ESP) bootmgfw.efi
. ตามผลลัพธ์จาก Boot-Repair ไฟล์นี้ไม่มีอยู่ ดิสก์ที่ติดตั้ง Windows มี BIOS MBR รุ่นเก่าและไม่มี ESP
การแปลงการติดตั้ง Windows เป็น EFI
เมื่อพิจารณาว่า OP ต้องการอัปเกรดเป็น Windows 11 ในอนาคต ทางออกที่ดีที่สุดคือการแปลงการติดตั้ง Windows เป็น EFI boot
จากการติดตั้ง Windows (โดยเฉพาะอย่างยิ่งสภาพแวดล้อมการกู้คืนจากการติดตั้งนั้น มิฉะนั้น คุณจะต้องจัดหาไฟล์ /allowFullOS
เปลี่ยนเป็นบังคับการแปลง) หรือจากสภาพแวดล้อม Windows PE เช่น โปรแกรมติดตั้ง Windows คุณสามารถเรียกใช้ได้ mbr2gpt
เพื่อแปลงดิสก์ Windows เป็นตารางพาร์ติชัน GPT และสร้าง ESP
จากสภาพแวดล้อมการกู้คืนของการติดตั้ง Windows ซึ่งจะถูกแปลง ดิสก์ระบบคือดิสก์ที่จะแปลง ดังนั้นการระบุหมายเลขดิสก์ และการจัดหา /ดิสก์:<หมายเลข>
การโต้เถียงไม่จำเป็น
มิฉะนั้น หมายเลขดิสก์จะเหมือนกับที่แสดงไว้ ดิสก์พาร์ต
. คุณสามารถเรียกใช้ รายการดิสก์
ใน ดิสก์พาร์ต
จากพรอมต์คำสั่งเพื่อระบุหมายเลขดิสก์ของคุณ:
X:\Windows\System32>diskpart
Microsoft DiskPart เวอร์ชัน 10.0.19041.964
ลิขสิทธิ์ (C) Microsoft Corporation.
บนคอมพิวเตอร์: ...
DISKPART> รายการดิสก์
จากนั้นคุณสามารถพิมพ์ ทางออก
เพื่อกลับไปที่พรอมต์คำสั่ง
ตรวจสอบการแปลง
ก่อนที่คุณจะแปลงดิสก์ คุณต้องตรวจสอบว่าสามารถแปลงดิสก์ได้หรือไม่ โดยผ่านทาง /ตรวจสอบความถูกต้อง
สวิตซ์.
จากพรอมต์คำสั่ง:
X:\Windows\System32>mbr2gpt /validate /disk:<number>
หากดิสก์มีสิทธิ์ในการแปลง คุณจะเห็น:
MBR2GPT: การตรวจสอบเสร็จสมบูรณ์
ดำเนินการแปลง
หากทุกอย่างเรียบร้อยดี และคุณมั่นใจว่าได้เลือกดิสก์ที่ถูกต้องแล้ว คุณสามารถดำเนินการแปลงต่อไปได้:
X:\Windows\System32>mbr2gpt /convert /disk:<number>
หากทุกอย่างเป็นไปด้วยดี คุณจะเห็นข้อความเหล่านี้:
MBR2GPT: การแปลงเสร็จสมบูรณ์
MBR2GPT: ก่อนที่ระบบใหม่จะสามารถบู๊ตได้อย่างถูกต้อง คุณต้องเปลี่ยนเฟิร์มแวร์เพื่อบู๊ตเป็นโหมด UEFI!
หากคุณรีบูทระบบ การติดตั้ง Windows ของคุณอาจเริ่มบูทผ่าน Ubuntu เมื่อ Windows บูตสำเร็จ คุณสามารถปิด Windows และเลือก Ubuntu จากเมนูการเลือกบูตในเฟิร์มแวร์ระบบของคุณ
การอัปเดตเมนูการบูตของ GRUB
เปิด Terminal แล้วเรียกใช้ ปรับปรุงด้วง
:
$ sudo อัพเดตด้วง
คุณควรเห็น ตัวจัดการการบูทของวินโดวส์
เพิ่มในเมนูบูต GRUB หากเป็นเช่นนั้น คุณสามารถปิดใช้งานการบู๊ต BIOS รุ่นเก่าในเฟิร์มแวร์ระบบได้แล้ว
โปรดทราบว่าควรมี ตัวจัดการการบูทของวินโดวส์
เข้าสู่เมนูการเลือกอุปกรณ์บู๊ตของเฟิร์มแวร์ของคุณ ถ้าไม่มีคุณต้องวิ่ง bootrec /FixMBR
เพื่อเพิ่มตัวเลือกให้กับ NVRAM เมื่อ Windows บูตในโหมด EFI ซึ่งอาจทำให้ ตัวจัดการการบูทของวินโดวส์
รายการในลำดับการบู๊ตสูงกว่า อูบุนตู
. หากต้องการย้อนกลับ จาก Terminal ให้แสดงรายการตัวเลือกการบูต NVRAM:
$ sudo efibootmgr
ระบุหมายเลขที่ตรงกับ Ubuntu จากนั้นคัดลอก BootOrder
ให้ย้าย Ubuntu ไปที่จุดเริ่มต้นแล้ววางลงในคำสั่ง เช่น ถ้าลำดับการบู๊ตคือ 0001,0002,0003
และ Ubuntu คือ 0003
, วิ่ง:
$ sudo efibootmgr -o 0003,0001,0002
ตอนนี้ Ubuntu จะบูตเป็นระบบปฏิบัติการแรกโดยเริ่มจากการรีบูตครั้งถัดไป