Fixing Boot Sequence for Ubuntu Linux with UEFI/Secure Boot on Acer V Nitro

เนื่องจากได้คอมพิวเตอร์ใหม่ (Acer V17 Nitro VN7-793G) มานานพอสมควร และอยากติดตั้ง Ubuntu แบบเนทีฟดูบ้าง งานดูเหมือนง่ายเพราะชีวิตนี้ลงลินุกซ์มาแล้วนับครั้งไม่ถ้วน แต่ผลคือลงเสร็จเรียบร้อย บูตแล้วยังไงก็เข้าหน้า Windows เหมือนเดิม

นั่งไล่อาการดูแล้ว พบว่าเกิดจากคอมตัวนี้ค่อนข้างใหม่ เปลี่ยนมาใช้ UEFI แทน BIOS และมีระบบ Secure Boot เพื่อป้องกันการบูตระบบปฏิบัติการอื่นๆ (นอกจาก Windows) ทำให้ไม่ว่าบูตยังไงก็ได้ Windows เสมอ

ขั้นตอนการแก้ไข แบ่งออกเป็น 3 ขั้นดังนี้

  1. ปิด Secure Boot
  2. ติดตั้ง Linux ตามปกติ
  3. เปิด Secure Boot กลับคืน พร้อมอนุมัติให้โหลด Ubuntu

ปิด Secure Boot

อย่างแรกเลยคือให้เราปิด Secure Boot ก่อน วิธีการคือให้รีสตาร์ตเครื่อง กด F2 เข้าหน้า BIOS/UEFI จากนั้นเข้าไปยังแท็บ Security

ใน BIOS/UEFI ของ Acer ตระกูลนี้ (ยี่ห้อ InsydeH20) มันจะบังคับเราตั้ง Supervisor Password สำหรับป้องกันคนเข้า BIOS ก่อน ไม่งั้นไม่สามารถทำอย่างอื่นได้เลย ก็ตั้งรหัสผ่านไปครับ (จำให้ได้ด้วยนะ)

Acer BIOS UEFI SecureBoot

จากนั้นสลับมายังแท็บ Boot จะพบว่าเมนูอันแรกสุด Secure Boot สามารถเปลี่ยนค่าได้แล้ว (ถ้าเราไม่ตั้งรหัส มันจะสีเทาๆ แก้อะไรไม่ได้) ให้เรากดเปลี่ยนเป็น Disabled

Acer BIOS UEFI SecureBoot

เสร็จแล้วกด F10 เซฟทุกอย่าง แล้วเข้ากระบวนการติดตั้ง Ubuntu ตามปกติ (เสียบ USB drive แล้วกด F12 เข้าหน้า Boot Menu เพื่อบูตจาก USB)

ติดตั้งเสร็จแล้ว ถ้าไม่ทำอะไรเป็นพิเศษ พอรีสตาร์ตเครื่องอีกครั้ง มันจะเข้า Windows เหมือนเดิม

ทางแก้คือให้รีสตาร์ตแล้วกด F2 เข้าหน้า BIOS/UEFI อีกครั้ง สิ่งที่ต้องทำคือ

  1. เข้าแท็บ Boot - เปิดค่า Secure Boot กลับมาเป็น Enabled
  2. กลับมายังแท็บ Security - เลือกเมนู Select an UEFI file as trusted for executing

มันจะเป็นเมนูลึกเข้าไปเรื่อยๆ เริ่มจากฮาร์ดดิสก์ตัวไหน (ของผมคือ HDD1) เลือก EFI, Ubuntu แล้วเลือกไฟล์เป็น shimx64.efi (ในกรณีเปิด Secure Boot) หรือ grubx64.efi (กรณีปิดไม่ใช้งาน Secure Boot) จะเลือกอันไหนขึ้นกับว่าเราตั้งใจจะเปิด Secure Boot หรือเปล่า (ในแง่ความปลอดภัยก็ควรเปิดนะครับ)

Acer BIOS UEFI SecureBoot

กลับมายังแท็บ Boot อีกครั้ง จะมีตัวเลือกการบูตชื่อว่า EFI File Boot 0: Ubuntu โผล่ขึ้นมา ให้เรากด F6 ให้มันขึ้นมาอันดับแรก หรืออยู่ก่อน Windows Boot Manager (ดูภาพข้างบนเอานะครับ) เสร็จแล้วกด F10 เซฟให้เรียบร้อย

รีบูตเครื่องคราวหน้า ควรจะเห็นหน้า Boot Menu ของ Ubuntu (Grub) สีน้ำตาลโผล่ขึ้นมา เป็นอันเสร็จ