การทำให้ "บันทึกเริ่มต้น" ทำงานกับ GRUB2 ... หรือไม่


8

ฉันเพิ่งติดตั้งระบบปฏิบัติการ Moblin กำลังใช้ GRUB2 ใน Ubuntu 8.04 GRUB 0.97 ของฉันถูกใช้ซึ่งฉันใช้ตัวเลือกที่บันทึกไว้เป็นค่าเริ่มต้นอย่างสะดวกสบาย ฉันพบว่าด้วย GRUB2 ฉันไม่ควรแก้ไข /boot/grub/menu.lst โดยตรงแต่ฉันทำ :) เพราะ Moblin ของฉันไม่ได้มี/ etc / default / grubที่พวกเขาบอกว่าฉันควรทำการดัดแปลงที่ฉันต้องการ

ดังนั้นสิ่งที่ฉันทำคือดังต่อไปนี้ซึ่งใช้งานไม่ได้:

default=saved
timeout=1
#splashimage=(hd0,0)/boot/grub/splash.xpm.gz
#hiddenmenu
#silent
title Moblin (2.6.31.5-10.1.moblin2-netbook)
        root (hd0,0)
        kernel /boot/vmlinuz-2.6.31.5-10.1.moblin2-netbook ro root=/dev/sda1 vga=current
        savedefault=1

title Pathetic Windows
        rootnoverify (hd0,1)
        chainloader +1
        savedefault=0

ด้วยการทำเช่นนั้นฉันควรสลับไปมาระหว่าง Moblin และ Window ในการบู๊ตแต่ละครั้งโดยอัตโนมัติ แต่มันไม่ทำงาน

เครื่องมือแก้ปัญหาบนอินเทอร์เน็ตเกือบทั้งหมดบอกว่าฉันควรเปิดใช้งานตัวเลือกDEFAULT = saveใน/ etc / default / grubแต่ฉันไม่สามารถค้นหาไฟล์นี้ได้ ความคิดใดที่ฉันควรทำอย่างไร

ขอบคุณมาก

ปรับปรุง:

ผมใช้เท่าเทียมกันที่จะลงนามเพราะโดยค่าเริ่มต้น menu.lst ของฉันมีรายการเป็นค่าเริ่มต้น = 0 อย่างไรก็ตามค่าเริ่มต้น 0ยังทำงานได้ดี

นอกจากนี้menu.lstฉันมีเป็นจริง symbolic link ไป./grub.conf ฉันยังสังเกตเห็นว่าคำสั่งgrub-intallและgrub-set-defaultไม่ทำงาน


คุณกำลังใช้การกำหนดหมายเลขตามพาร์ติชั่นดิสก์ 0 ซึ่งไม่เหมือนกับ GRUB2 ซึ่งดูเหมือน Legacy GRUB
ephemient

หากคุณมี/boot/grub/menu.lstคุณไม่ได้ใช้ Grub2 ใช้ Grub2 /boot/grub/grub.cfg คุณอาจเห็นทั้งสองไฟล์การกำหนดค่าหากคุณอัปเดตเป็น Grub2 จากการติดตั้งรุ่นเก่าที่ใช้ Grub1
# # # # quack quixote

คำตอบ:


19

ไวยากรณ์ที่ถูกต้องสำหรับการเปิดใช้งานsavedefaultใน/etc/default/grub(GRUB 2) อยู่กับบรรทัด:

GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true

และไม่ได้เส้นDEFAULT=saveที่เอ็นไควเรอแนะนำ

หลังจากเพิ่มสองบรรทัดด้านบนลงไป/etc/default/grubหนึ่งจะต้องอัปเดตการกำหนดค่าของ GRUB เป็น superuser ด้วยคำสั่งต่อไปนี้:

grub-mkconfig
update-grub

อย่างน้อยใน Lubuntu 12.10 grub-mkconfigไม่จำเป็น (เพราะไม่มีตัวเลือกให้ทิ้งไฟล์ปรับแต่งไปที่ stdout) คำสั่งที่จำเป็นเพียงอย่างเดียวคือupdate-grubสิ่งที่เรียกใช้จริงgrub-mkconfigกับ-o fileตัวเลือกที่เหมาะสม


รายละเอียดอย่างหนึ่งคืออย่างน้อยบน Ubuntu รายการ memtest จะไม่ถูกบันทึกในกรณีที่คุณตัดสินใจที่จะลองทดสอบคุณสมบัติอย่างรวดเร็ว ...
ราคา

1

ฉันไม่แน่ใจว่า GRUB อนุญาต=สัญญาณหรือไม่ default savedการตั้งค่าของฉันอ่าน

ปัญหาของคุณคือPathetic Windowsรายการไม่ทำsavedefaultดังนั้นรายการเริ่มต้นจะไม่เปลี่ยนเป็น Windows

แก้ไข : นอกจากนี้savedefaultโดยค่าเริ่มต้นจะบันทึกรายการปัจจุบัน เฉพาะในกรณีที่คุณให้หมายเลขมันจะบันทึกรายการอื่นนอกเหนือจากรายการปัจจุบัน

ลองสิ่งนี้:

default saved
timeout 1
#splashimage (hd0,0)/boot/grub/splash.xpm.gz
#hiddenmenu
#silent
title Moblin (2.6.31.5-10.1.moblin2-netbook)
        root (hd0,0)
        kernel /boot/vmlinuz-2.6.31.5-10.1.moblin2-netbook ro root=/dev/sda1 vga=current
        savedefault

title Pathetic Windows
        rootnoverify (hd0,1)
        chainloader +1
        savedefault

ผมไม่ทราบว่า Moblin แต่ในการแจกแจงอื่น ๆ มันเป็นเรื่องธรรมดาที่จะมีที่ไหนสักแห่งในแฟ้มการกำหนดค่าไม่ได้อยู่ใน/boot/grub/etc


ฉันจะใส่คำสั่ง saveefault ก่อนเพราะมันไม่ชัดเจนสำหรับฉันไม่ว่า chainloader หรือการเรียกเคอร์เนลออกจากบูตโหลดเดอร์ทันที ..

ฉันใช้เครื่องหมายเท่ากับเพราะโดยค่าเริ่มต้นเมนูของฉันมีรายการเป็นค่าเริ่มต้น = 0 อย่างไรก็ตามค่าเริ่มต้น 0 ยังทำงานได้ดี ยิ่งไปกว่านั้น menu.lst ที่ฉันมีคือลิงก์สัญลักษณ์ไปที่. /grub.conf ฉันได้ตรวจสอบแล้วว่าคำสั่ง grub-intall และ grub-set-default ไม่ทำงาน

ดูการแก้ไขของฉันด้วย คุณไม่ควรให้savedefaultหมายเลข

ไวยากรณ์savedefault Nไม่ได้savedefault=N(อีกครั้งหากคุณต้องการให้บันทึกรายการอื่นเป็นค่าเริ่มต้น - หากคุณต้องการให้รายการปัจจุบันออกNไป)
ต้มตุ๋น quixote

1 cuz มันทำงานให้ฉัน (แม้ว่า OP ไม่ถามเกี่ยวกับ grub2)
nhed
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.