ฉันขาดอะไรไปหรือเหตุใดจึงไม่สามารถติดตั้ง grub ได้เสมอโดยที่มันถูกกำกับด้วยการแบ่งพาร์ติชันด้วยตนเอง + preseed
ฉันใช้ไฟล์ preseed สำหรับเดสก์ท็อป xubuntu 20.04.2 ที่ไม่มีคำสั่งการแบ่งพาร์ติชัน เมื่อบูท "automatic-ubiquity" หลังจากแบ่งพาร์ติชันด้วยตนเองแล้ว sda ที่เลือก /dev/sda1 จะถูกละเว้นและติดตั้ง grub ใน /dev/sda
เพิ่ม d-i grub-installer/only_debian บูลีนเท็จ
และ/หรือ d-i grub-installer/with_other_os บูลีนเท็จ
ล่วงหน้า หลังจากแบ่งพาร์ติชันด้วยตนเอง sda ที่เลือก /dev/sda1 จะถูกละเว้นและติดตั้ง grub ใน /dev/sda
ฉันแฮ็กวิธีการตั้งค่าแบบไดนามิก d-i grub-installer/bootdev สตริงเริ่มต้น
แต่ต้องมีการบูทในสภาพแวดล้อมจริง แบ่งพาร์ติชันดิสก์และตั้งค่าพาร์ติชันที่ใช้งานอยู่ก่อน แล้วจึงเริ่ม "ubiquity -âautomatic" หรือรีบูตด้วย "automatic-ubiquity"
d-i grub-installer/only_debian บูลีนเท็จ
d-i grub-installer/with_other_os บูลีนเท็จ
d-i grub-installer/bootdev สตริงเริ่มต้น
d-i partman/early_command สตริง \
BOOTFLAG=$(lsblk -rpo PARTFLAGS,PKNAME,PATH | grep "0x80" | ตัด -f 3 -d ' '); \
ถ้า [ $BOOTFLAG ]; จากนั้น debconf-set grub-installer/bootdev $BOOTFLAG; ไฟ;
การทดสอบนี้ใช้ได้กับ vm ที่มีดิสก์เดียว แต่อาจไม่ทำงานตามที่ต้องการบนฮาร์ดแวร์ที่มีหลายดิสก์หรือติดตั้งจาก usb
d-i grub-installer/ข้ามบูลีนจริง
ดูเหมือนถูกละเลยอยู่เสมอ ฉันแฮ็กวิธีที่จะทำให้มันได้ผลอีกครั้ง ฉันตั้งค่า d-i grub-installer/bootdev สตริง
ปล่อยให้ว่างเปล่า การติดตั้ง grub ด้วยตนเองใน ubiquity/success_command ไม่ทำงาน ตรวจสอบเซ็กเตอร์สองสามตัวแรกของ /dev/sda1 ทั้งหมดเป็น 00 คำสั่งอื่นดำเนินการสำเร็จ
d-i grub-installer/only_debian บูลีนเท็จ
d-i grub-installer/with_other_os บูลีนเท็จ
d-i grub-installer/bootdev สตริง
ubiquity ubiquity/success_command สตริง \
ติดตั้งด้วงในเป้าหมาย -âforce /dev/sda1; \
echo "tmpfs /tmp tmpfs nosuid,nodev 0 0" >> /target/etc/fstab;