ทำให้ด้วงคงการบู๊ตเริ่มต้นภายใต้การอัพเดตเคอร์เนล


11

ฉันบูทเครื่องของฉันและฉันต้องการให้มันเป็นค่าเริ่มต้นในการบูตเข้าสู่ windows ดังนั้นเมื่อใดก็ตามที่ฉันรีสตาร์ทเครื่องจากระยะไกลจากบ้านของฉันมันจะสามารถกลับเข้าสู่ Windows (แทนที่จะเป็น Ubuntu)

ปัญหาคือทุกครั้งที่ Ubuntu อัพเกรดเคอร์เนลฉันต้องรีเซ็ตรายการบูตเริ่มต้นของด้วงกลับไปเป็น windows นี่เป็นเพราะตัวโหลดเมนูด้วงใช้ตำแหน่งเช่น 6 สำหรับระบบปฏิบัติการเริ่มต้นในการบูต และเมื่อ Ubuntu ติดตั้งเคอร์เนลใหม่มันจะเปลี่ยนลำดับนั้น

ฉันกำลังมองหาวิธีการกำหนดค่าด้วงที่จะจำรายการบูตเริ่มต้นภายใต้การปรับปรุงเคอร์เนล

คำตอบ:


9

Grub 1 (Ubuntu 9.04 ขึ้นไป)

ผมพบว่าวิธีที่ง่ายที่สุดที่จะทำนี้คือการย้ายรายการบูตของ Windows /boot/grub/menu.lstข้างต้นรายการอูบุนตูใน โดยค่าเริ่มต้นไฟล์การกำหนดค่า Grub จะถูกจัดวางแบบนี้:

  1. ตัวเลือกพื้นฐาน
  2. debian auto-magic เคอร์เนล config (รวมถึงยูทิลิตี้เช่น memtest86 + โดยค่าเริ่มต้น)
  3. ตรวจพบระบบปฏิบัติการอื่น ๆ

ส่วนที่ 2 แบ่งเขตโดยบรรทัดเหล่านี้ในไฟล์กำหนดค่า:

### BEGIN AUTOMAGIC KERNELS LIST
(lots of stuff here)
### END DEBIAN AUTOMAGIC KERNELS LIST

รายการสำหรับระบบปฏิบัติการตรวจสอบอัตโนมัติ (เช่น Windows) จะอยู่หลังส่วนนี้ เมื่อคุณติดตั้งเคอร์เนลใหม่ส่วนที่ 2 เป็นเพียงส่วนเดียวที่ได้รับการเปลี่ยนแปลง ดังนั้นการย้ายระบบปฏิบัติการอัตโนมัติไปยังที่อื่นก่อนที่BEGINบรรทัดจะวางไว้ที่หมายเลขรายการจะไม่เปลี่ยนแปลงเมื่อมีการติดตั้งเคอร์เนลใหม่


Grub 2 (Ubuntu 9.10 ขึ้นไป)

ด้วย Grub2 ไฟล์การกำหนดค่าทั้งหมดจะถูกสร้างขึ้นมาใหม่ทุกครั้งที่update-grubมีการเรียกใช้ดังนั้นการแก้ไข/boot/grub/grub.cfgจะไม่เป็นการแก้ไขแบบถาวร วิธีไฟล์ที่ถูกสร้างขึ้นจะถูกจัดการโดยไฟล์และสคริปต์ใน/etc/default/grub /etc/grub.d/*ดังนั้นเราจึงปรับเปลี่ยนการกำหนดค่าโดยการแก้ไขไฟล์ที่ควบคุมแต่ละส่วนของ configfile แล้วทำงานupdate-grubอีกครั้ง

ฉัน/etc/grub.dรวมไฟล์เหล่านี้:

  • 00_header
  • 05_debian_theme
  • 10_hurd
  • 10_linux
  • 20_memtest86 +
  • 21_memtest86
  • 30_os-Prober
  • 40_custom

นี่คือ shellscripts ที่ถูกเรียกใช้เพื่อสร้างไฟล์ปรับแต่ง รายการบูตของ Windows ถูกสร้างขึ้นโดย30_os-proberซึ่งดำเนินการหลังจากที่10_linuxรายการบูตลินุกซ์จะเกิดขึ้นใน ดังนั้นให้เปลี่ยนชื่อ30_os-proberเป็นบางสิ่งที่น้อยกว่า 10 และรันใหม่update-grub

mv /etc/grub.d/30_os-prober /etc/grub.d/09_os-prober
update-grub

ตอนนี้รายการ Windows ของคุณควรเป็นรายการแรกและคุณสามารถตั้งค่าให้เป็นรายการเริ่มต้นการบูต ( GRUB_DEFAULT=) /etc/default/grubได้


2

ทำตามคำแนะนำในบล็อกของฉันที่นี่เพื่อใช้ cleanload bootloader Windows สำหรับงานของคุณ ฉันใช้ตอนนี้และเมื่อฉันเริ่มพีซีฉันมีสองตัวเลือก:

Windows Vista Ubuntu 10.04

ไม่มีความยุ่งเหยิงอื่น ๆ คุณสามารถตั้งค่าตัวเลือกต่าง ๆ มากมายเช่นกัน หากฉันไม่กดปุ่มใด ๆ เป็นเวลา 5 วินาที Windows จะบูตขึ้น

โชคดี.


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