Ubuntu ของฉันใช้เวลา 30 วินาทีในการตั้งค่าหรือไม่ นี่คือวิธีการหลังจากที่ฉันได้พบว่าrecordfail เป็นค่าที่หายไป
1. ตรวจสอบสคริปต์ด้วงที่แท้จริง /boot/grub/grub.cfg
IMHO /boot/grub/grub.cfg
วิธีที่ดีที่สุดในการตรวจสอบสิ่งที่ด้วงจะทำคือการเปิด มันเป็นสคริปต์ที่สร้างขึ้นโดยอัตโนมัติโดยgrub-mkconfig
ใช้แม่แบบจากและการตั้งค่าจาก/etc/grub.d
/etc/default/grub
รอบ ๆ บรรทัดที่ 109 คุณจะเห็นสิ่งต่อไปนี้:
108 if [ "${recordfail}" = 1 ] ; then
109 set timeout=30 # Note here this value
110 else
111 if [ x$feature_timeout_style = xy ] ; then
112 set timeout_style=hidden
113 set timeout=3
114 # Fallback hidden-timeout code in case the timeout_style feature is
115 # unavailable.
116 elif sleep --interruptible 3 ; then
117 set timeout=0
118 fi
119 fi
ในกรณีของฉันด้วยความช่วยเหลือของสคริปต์ที่สร้างขึ้นฉันสามารถค้นหาว่าrecordfail
ตัวแปรไม่ได้ถูกตั้งค่า
2. หากrecordfail
ตัวแปรไม่ได้รับการตั้งค่าให้ตั้งค่า
เปิด/etc/default/grub
ในโปรแกรมแก้ไขข้อความที่คุณชื่นชอบ (เช่นเสียงเรียกเข้า) จากนั้นตั้งค่าตัวแปรGRUB_RECORDFAIL_TIMEOUT
เป็นค่าที่กำหนดเช่น 5 วินาที
ไฟล์กำหนดค่าของคุณควรมีลักษณะดังนี้:
GRUB_DEFAULT=0
GRUB_TIMEOUT=3
GRUB_TIMEOUT_STYLE=hidden
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
GRUB_RECORDFAIL_TIMEOUT=5
3. อัพเดตการกำหนดค่าเพื่อให้ทำงานได้ update-grub
update-grub
ขั้นตอนสุดท้ายให้อัปเดตการตั้งค่าการทำงานด้วย สำหรับตอนนี้ GRUB2 จะใช้การหมดเวลาที่ตั้งไว้ คำสั่งนี้จะสร้าง/boot/grub.cfg
ไฟล์ใหม่
4. ตรวจสอบผลลัพธ์สคริปต์ที่สร้างขึ้น
เปิดอีกครั้ง/boot/grub.cfg
และตรวจสอบผลลัพธ์รอบบรรทัด 109:
108 if [ "${recordfail}" = 1 ] ; then
109 set timeout=5 # Note here this value
110 else
111 if [ x$feature_timeout_style = xy ] ; then
112 set timeout_style=hidden
113 set timeout=3
114 # Fallback hidden-timeout code in case the timeout_style feature is
115 # unavailable.
116 elif sleep --interruptible 3 ; then
117 set timeout=0
118 fi
119 fi
โปรดทราบว่าค่าที่บรรทัดที่ 109 ตอนนี้เป็น 5 แทน 30 เหมือนก่อน