ก่อนอื่นมันสำคัญมากที่คุณจะเข้าใจโหมดการบู๊ตของคุณ คอมพิวเตอร์สมัยใหม่สามารถบู๊ตได้สองวิธี:
- BIOS - นี่เป็นวิธีการบูตแบบเก่าซึ่งใช้กับคอมพิวเตอร์ส่วนใหญ่ที่เปิดตัวก่อนปี 2554 คอมพิวเตอร์สมัยใหม่รองรับการบูทโหมด BIOS ผ่านคุณสมบัติที่เรียกว่า Compatibility Support Module (CSM) หรือที่เรียกว่า "การรองรับการบู๊ตโหมดดั้งเดิม" หรือ คำที่คล้ายกัน ดังนั้นวิธีการนี้สามารถอ้างถึงโดยสามชื่อ: BIOS, CSM หรือมรดก มันเกี่ยวข้องกับรหัสโหลดเดอร์สำหรับบูต 16 บิตที่แยกใน Master Boot Record (MBR) และที่อื่น ๆ มันเป็นวิธีการบู๊ตที่ไม่เหมาะสม แต่เป็นผู้ใหญ่และเว็บไซต์ส่วนใหญ่ที่ไม่ได้กล่าวถึงโหมดการบูตอย่างชัดเจนอธิบายถึงการบูทโหมด BIOS อย่างไรก็ตามหากคอมพิวเตอร์ของคุณมาพร้อมกับ Windows 8 หรือใหม่กว่ามีโอกาสที่จะไม่ใช้วิธีการบูตนี้
- EFI / UEFI - นี่คือโหมดการบูตแบบเนทีฟสำหรับคอมพิวเตอร์ส่วนใหญ่ที่เปิดตัวตั้งแต่กลางปี 2011 และมันแตกต่างจากการบูตในโหมด BIOS ดังนั้นคุณควรเพิกเฉยต่อคำแนะนำใด ๆ ที่ระบุไว้อย่างชัดเจนสำหรับการบูทโหมด BIOS ไม่ได้พูดถึงโหมดการบู๊ต (เนื่องจากมีแนวโน้มว่าจะเก่าหรือเขียนโดยคนที่ไม่ทราบความแตกต่าง) หนึ่งข้อยกเว้น: ผู้คนจำนวนมากและผู้ผลิตคอมพิวเตอร์ต่างก็อ้างถึง EFIs ว่า "BIOSes" การฝึกฝนนี้สร้างความสับสนอย่างมาก
เมื่อคุณพูดถึง Windows 10 โอกาสที่คอมพิวเตอร์ของคุณจะเป็นแบบ EFI และบู๊ทในโหมด EFI ฉันจะดำเนินการภายใต้สมมติฐานนั้น หากไม่ถูกต้องให้เพิกเฉยต่อคำตอบที่เหลือ
ในการบูตดิสก์ภายในในโหมด EFI โดยทั่วไประบบปฏิบัติการจะเก็บบูตโหลดเดอร์เป็นไฟล์บนEFI System Partition (ESP)บนดิสก์ ชื่อไฟล์นี้สามารถเป็นอะไรก็ได้ตามกฎหมาย แต่สำหรับอูบุนตูมันจะเป็นซึ่งในการเปิดตัวเปิดEFI/ubuntu/shimx64.efi
EFI/ubuntu/grubx64.efi
ตัวติดตั้งระบบปฏิบัติการลงทะเบียนชื่อของตัวโหลดการบูตด้วยตัวจัดการการบูตในตัวของ EFI ซึ่งเก็บชื่อนั้นไว้ใน NVRAM หาก EFI ทำงานได้อย่างถูกต้อง (ไม่ได้ทำทั้งหมด) นี่จะส่งผลให้กระบวนการบูตทำงานได้
ปัญหาเกี่ยวกับกระบวนการนี้ซึ่งนำไปใช้กับดิสก์แบบถอดได้คือสามเท่า:
- เครื่องมือติดตั้ง Ubuntu จะติดตั้ง GRUB ไปที่ "the" ESP - แต่คุณอาจมี ESP หลายอัน (เกือบจะแน่นอนหนึ่งในฮาร์ดดิสก์และอาจเป็นหนึ่งในไดรฟ์ USB) การควบคุมตำแหน่งที่ติดตั้ง GRUB อาจเป็นเรื่องยุ่งยาก มันไม่ได้ทำโดยใช้ตัวเลือกที่มีชื่อชัดเจนเกี่ยวกับสถานที่ที่จะติดตั้งด้วง แต่สามารถทำได้ (AFAIK) จากตัวเลือกการติดตั้ง "Something Else" เท่านั้นโดยทำเครื่องหมาย ESP ที่คุณต้องการใช้เป็น "EFI boot partition" หรือ "EFI System Partition" (ชื่อใดขึ้นอยู่กับรุ่น Ubuntu)
- หากคุณติดตั้ง GRUB ลงใน ESP บนไดรฟ์ USB จากนั้นเมื่อคุณถอดไดรฟ์ USB ออก EFI อาจสังเกตเห็นว่ามีรายการบูตโหลดเดอร์ที่ลงทะเบียนแล้วซึ่งไม่ถูกต้องและลบรายการนั้น EFIs จำนวนมากทำสิ่งนี้และหมายความว่าถ้าคุณติดตั้ง GRUB ลงในดิสก์ภายนอกแล้วถอดออกคุณจะสูญเสียความสามารถในการบูตจากดิสก์นั้นแม้ว่าคุณจะเสียบดิสก์กลับเข้าไปก็ตาม
- วิธีที่อูบุนตูตั้งค่า GRUB เป็นสาเหตุให้พึ่งพาไฟล์กำหนดค่าที่อยู่ใน
/boot/grub
ไดเรกทอรีUbuntu ซึ่งไม่น่าจะเป็นบน ESP ดังนั้นหาก Ubuntu ติดตั้ง GRUB ลงใน ESP บนดิสก์ภายในของคุณคุณจะหลีกเลี่ยงปัญหาแรก แต่จะพบปัญหาอื่นเนื่องจากเมื่อคุณเริ่มการเชื่อมต่อกับไดรฟ์ USB GRUB จะเปิดใช้งานและไม่พบไฟล์การกำหนดค่า ผลลัพธ์คือgrub>
พรอมต์ที่จะทำให้ผู้ใช้ส่วนใหญ่ประหลาดใจ
มีวิธีแก้ไขปัญหาเหล่านี้จำนวนมากรวมไปถึง:
- คู่มือการติดตั้งของด้วงชื่อไฟล์สำรองบนดิสก์ภายนอก - บูตระบบปฏิบัติการติดตั้งโดยใช้ชื่อไฟล์สำรอง
EFI/BOOT/bootx64.efi
ของ หากคุณคัดลอก Shim (ซึ่งเปิดตัว GRUB) ไปยังชื่อไฟล์นี้ (โดยการคัดลอกEFI/ubuntu
ไปที่EFI/BOOT
บน ESP จากนั้นเปลี่ยนชื่อshimx64.efi
เป็นbootx64.efi
ในEFI/BOOT
) เฟิร์มแวร์ของคุณจะสามารถเรียกใช้ GRUB ที่ใช้ USB ได้เช่นเดียวกับที่ติดตั้ง Ubuntu สิ่งนี้จะทำงานได้ผ่านปัญหาทั้งสองอย่างที่ฉันเพิ่งระบุ แต่คุณจะต้องใช้ตัวจัดการการบูตในตัวของคอมพิวเตอร์เพื่อเลือกระบบปฏิบัติการที่จะบูต ตัวจัดการการบูตในตัวนี้มีตั้งแต่ไม่สามารถใช้งานได้จนถึงยอมรับได้ดังนั้นอาจเป็นวิธีแก้ปัญหาที่ยอมรับได้หรือไม่ก็ได้ คุณอาจต้องปรับแต่งลำดับการบูตหลังจากติดตั้ง Ubuntu เพื่อป้องกันไม่ให้ GRUB เรียกใช้จาก ESP ของดิสก์ภายในหรือ ESP ของดิสก์ภายนอกตามค่าเริ่มต้น
- ใส่
/boot
พาร์ติชันบนดิสก์ภายในของคุณ - หากคุณติดตั้ง GRUB ลงในดิสก์ภายในคุณสามารถใส่/boot
พาร์ติชันบนดิสก์ภายในได้ สิ่งนี้จะทำให้ GRUB สามารถทำงานได้ตามปกติในบูททั้งหมด อย่างไรก็ตามตัวเลือก Ubuntu จะปรากฏตลอดเวลาแม้เมื่อถอดปลั๊ก USB แล้ว สิ่งนี้อาจไม่เป็นที่น่าพอใจโดยเฉพาะหาก Ubuntu เป็นค่าเริ่มต้น นอกจากนี้โซลูชันนี้ยังหมายความว่าไดรฟ์ USB ภายนอกของคุณจะสามารถบูตได้บนคอมพิวเตอร์ที่คุณเตรียมไว้เท่านั้น หากคุณต้องการใช้ดิสก์นั้นบนคอมพิวเตอร์เครื่องอื่นคุณควรหลีกเลี่ยงวิธีนี้
- ใช้จัดการการบูตอย่างชาญฉลาด - บูตผู้จัดการช่วยให้คุณเลือกระบบปฏิบัติการที่จะบูตขณะที่บูตรถตักดินโหลดเคอร์เนลในหน่วยความจำ GRUB ทำงานทั้งสองอย่างและตัวจัดการการบูตในตัวของ EFI ทำงานเพียงงานแรกเท่านั้น มีตัวจัดการการบูตอื่น ๆ ให้ใช้ซึ่งบางตัวอาจช่วยคุณหลีกเลี่ยงปัญหาที่ฉันพบ ตัวอย่างเช่นrEFIndของฉันเองหากติดตั้งลงใน ESP ของดิสก์ภายในและสร้างโปรแกรมบูตเริ่มต้นจะตรวจจับและนำเสนอตัวเลือก Ubuntu ถ้าหากมี GRUB หรือเคอร์เนล Linux อยู่นั่นคือเมื่อเสียบไดรฟ์ USB ในโดยตั้งค่า
default_selection
ตัวเลือกในrefind.conf
คุณสามารถกำหนดค่า rEFInd ให้บูต Ubuntu โดยอัตโนมัติหากเสียบปลั๊ก USB USB ของคุณและบูตตรงไปที่ Windows หากไม่ได้เสียบปลั๊ก USB Ubuntu ไว้คำตอบของคำถามนี้ให้รายละเอียดเพิ่มเติมเกี่ยวกับการกำหนดค่าประเภทนี้แม้ว่า Mac มากกว่าพีซี
โชคดีหนึ่งในวิธีการเหล่านี้จะช่วยให้คุณเริ่มต้นใช้งานได้