การกระจายส่วนใหญ่จะติดตั้งบูทโหลดเดอร์เพิ่มเติมบนระบบ UEFI UEFI นั้นเป็นบูตโหลดเดอร์มันมีเมนูให้เลือกระบบปฏิบัติการที่แตกต่างกันหรือแต่ละเมล็ด นอกจากนี้การตั้งค่า UEFI สามารถจะเปลี่ยนแปลงได้ด้วยเครื่องมือ userspace efibootmgr
เช่น
เคอร์เนลตั้งแต่ 3.3 รองรับ EFI_STUB ซึ่งหมายความว่าเคอร์เนลสามารถโหลดได้โดยตรงจาก UEFI เหตุผลการกระจายการตัดสินใจที่จะใช้บูตโหลดเดอร์เพิ่มเติมคืออะไร? บทเรียนส่วนใหญ่บน Linux / UEFI มุ่งเน้นไปที่วิธีการตั้งค่าบูตโหลดเดอร์เพิ่มเติมเป็นหลัก (rEFInd, grub2, ELILO และอื่น ๆ ) แทนการบูท Linux ด้วย EFI_STUB
สิ่งเดียวที่ขาดหายไปในการกระจายคือการสนับสนุน เนื่องจากดิสทริบิวชันส่วนใหญ่เชื่อมโยงบูตโหลดเดอร์ตัวที่สองเคอร์เนลจะไม่ถูกเพิ่มลงในเมนูการบู๊ต UEFI และจะไม่คัดลอกไปยังพาร์ติชันระบบ EFI
มีสคริปต์สามบทที่เพียงพอที่จะใช้เวทมนตร์ทั้งหมด หนึ่งซึ่งคัดลอก initramfs ไปยัง ESP อันที่สองคัดลอกเคอร์เนลไปที่ ESP และสร้างรายการใหม่ในเมนูการบู๊ต UEFI สคริปต์ที่สามลบเคอร์เนลเก่าและ initramfs ออกจาก ESP และลบรายการเมนูการบูต UEFI สิ่งนี้จะช่วยให้การปรับปรุง / การล้างเคอร์เนล / เริ่มต้นโดยอัตโนมัติโดยไม่ต้องมีการโต้ตอบกับผู้ใช้ ฉันใช้วิธีนี้มานานกว่าหนึ่งปีและใช้งานได้อย่างไม่มีที่ติ
ทำไมการกระจายส่วนใหญ่จึงใช้ด้วงแทน EFI_STUB
ลิงค์:
แก้ไข: ฉันไม่ได้พูดถึงการลบการสนับสนุนด้วงทั้งหมด แต่เพื่อเสนอทางเลือกสำหรับผู้ที่ต้องการใช้ด้วยเหตุผลต่างๆ การแจกแจงสามารถให้แพคเกจgrub-efi
สำหรับผู้ที่ต้องการเชื่อมโยง UEFI และด้วงและแพ็คเกจefistub-boot
ที่มีสคริปต์ที่ฉันกล่าวถึงข้างต้น