ฉันจะตั้ง Windows ให้บู๊ตเป็นค่าเริ่มต้นในบูตโหลดเดอร์ได้อย่างไร


235

ฉันจะตั้งค่า bootloader เพื่อให้ใน dualboot กับ Windows 7 / Ubuntu 11.04 ของฉัน Windows เริ่มต้นขึ้นเป็นมาตรฐานแทน Ubuntu ได้อย่างไร

คำตอบ:


262

การปรับแต่ง/etc/default/grubไฟล์

มีสองวิธีในการทำเช่นนี้โดยใช้การแก้ไขไฟล์ด้วง สิ่งเหล่านี้อธิบายไว้ในหน้าUbuntu Community Document Grub2

สองวิธีคือ:

  • บูตระบบปฏิบัติการที่คุณบูทครั้งสุดท้าย "วิธีการบันทึก"
    • นี่คือสิ่งที่ฉันใช้ มันช่วยให้ฉันตัดสินใจได้ว่าจะใช้อันไหนและจะให้ฉันรีบูทเข้าสู่ระบบนั้นสะดวกเมื่อฉันอัพเดท
  • บูตระบบปฏิบัติการเฉพาะโดยค่าเริ่มต้น
    • คำตอบสำหรับคำถามที่แน่นอนของคุณ

การค้นหา menuentry เพื่อตั้งค่าเป็นค่าเริ่มต้นใหม่

ในการเริ่มต้นเราจำเป็นต้องค้นหาสิ่งที่เรากำลังบูทหรือต้องการบู๊ต เปิดเทอร์มินัลด้วยCtrl+ Alt+ tและพิมพ์

grep menuentry /boot/grub/grub.cfg

user@YourComputer:~$ grep menuentry /boot/grub/grub.cfg
menuentry 'Ubuntu, with Linux 2.6.35-31-generic' --class ubuntu --class gnu-linux --class gnu --class os {
menuentry 'Ubuntu, with Linux 2.6.35-31-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os {
menuentry 'Ubuntu, with Linux 2.6.35-30-generic' --class ubuntu --class gnu-linux --class gnu --class os {
menuentry 'Ubuntu, with Linux 2.6.35-30-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os {
menuentry "Memory test (memtest86+)" {
menuentry "Memory test (memtest86+, serial console 115200)" {
menuentry "Windows NT/2000/XP (loader) (on /dev/sda1)" {
menuentry "Ubuntu, with Linux 2.6.32-34-generic (on /dev/sdb1)" {
menuentry "Ubuntu, with Linux 2.6.32-34-generic (recovery mode) (on /dev/sdb1)" {
menuentry "Ubuntu, with Linux 2.6.32-33-generic (on /dev/sdb1)" {
menuentry "Ubuntu, with Linux 2.6.32-33-generic (recovery mode) (on /dev/sdb1)" {
menuentry "Windows Vista (loader) (on /dev/sdc1)" {

คุณจะเห็นว่าวิธีการ "บันทึก" นั้นมีประโยชน์เมื่อบูตระบบปฏิบัติการหลายระบบ บันทึกชื่อของรายการที่คุณต้องการเช่นWindows NT/2000/XP (loader) (on /dev/sda1)เราต้องการในภายหลัง

การแก้ไข/etc/default/grubไฟล์

พิมพ์ในอาคาร

sudo nano -B / etc / default / grub

และรหัสผ่านของคุณถ้าถาม นาโนบรรณาธิการจะเปิด

A. วิธีการบันทึก - ในวิธีที่ฉันต้องการฉันทำการเปลี่ยนแปลงต่อไปนี้จากไฟล์ด้วงมาตรฐาน

  • ฉันเปลี่ยนค่าGRUB_DEFAULTเป็นsaved:

    GRUB_DEFAULT=saved
    
  • ฉันเปิดใช้งานฟังก์ชัน SAVEDEFAULTโดยเพิ่มบรรทัดต่อไปนี้:

    GRUB_SAVEDEFAULT=true
    

B. เมนูเฉพาะ - ในแบบที่คุณต้องการ

  • เปลี่ยนค่าGRUB_DEFAULTเป็นชื่อของระบบ Windows ที่คุณต้องการบู๊ตเสมอ ชื่อของตัวเลือกเมนู Grub ที่สอดคล้องกันสามารถพบได้ตามที่อธิบายไว้ในส่วนก่อนหน้า
  • ฉันต้องการให้ Window XP ตั้งค่าเริ่มต้นเป็น boot เสมอฉันจะตั้งค่าGRUB_DEFAULTเป็น"Windows NT/2000/XP (loader) (on /dev/sda1)":

    GRUB_DEFAULT="Windows NT/2000/XP (loader) (on /dev/sda1)"
    

    หมายเหตุ: อูบุนตูบางรุ่นต้องมีเครื่องหมายอัญประกาศเดี่ยว (') Vice double quote (")

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

อัพเดตการกำหนดค่าการบู๊ต

ตอนนี้คุณต้องวิ่ง

sudo update-grub

เพื่ออัปเดตgrub.cfgไฟล์ที่ระบบสร้างขึ้นใน/boot/grub/ไดเรกทอรี

user@YourComputer:~$ sudo update-grub
Generating grub.cfg ...
Found background: /usr/share/images/grub/Apollo_17_The_Last_Moon_Shot_Edit1.tga
Found linux image: /boot/vmlinuz-2.6.35-31-generic
Found initrd image: /boot/initrd.img-2.6.35-31-generic
Found linux image: /boot/vmlinuz-2.6.35-30-generic
Found initrd image: /boot/initrd.img-2.6.35-30-generic
Found memtest86+ image: /boot/memtest86+.bin
Found Windows NT/2000/XP (loader) on /dev/sda1
Found Ubuntu 10.04.3 LTS (10.04) on /dev/sdb1
Found Windows Vista (loader) on /dev/sdc1
done

ภาคผนวก

หมายเหตุเกี่ยวกับนาโน

nanoใช้งานง่ายโดยเฉพาะในสถานี เลื่อนไปรอบ ๆ ด้วยปุ่มลูกศร พิมพ์ที่คุณเพิ่มลบที่ไม่พึงประสงค์

-Bหรือ--backupตัวเลือกสำรองรุ่นก่อนหน้าของมันไปที่ชื่อไฟล์ปัจจุบัน suffixed ~ด้วย มีประโยชน์มากในกรณีของการหวั่นผล pfinger ไขมัน

เมื่อคุณผ่านCtrl+ oจะช่วยให้คุณสามารถบันทึกการแก้ไขของคุณโดยการกดปุ่มEnterและCtrl+ xจะปิด ตัวเลือกเหล่านี้และอื่น ๆ จะแสดงที่ด้านล่างของหน้าจอขั้วกับที่แสดงให้เห็น^Ctrl

^G Get Help    ^O WriteOut    ^R Read File   ^Y Prev Page   ^K Cut Text    ^C Cur Pos
^X Exit        ^J Justify     ^W Where Is    ^V Next Page   ^U UnCut Text  ^T To Spell

หมายเหตุเกี่ยวกับ nano, sudoeditor และบรรณาธิการอื่น ๆ

บางคนในชุมชน Ubuntu แนะนำแทนsudoedit nanoฉันแนะนำnano- ซึ่งเป็นตัวแก้ไข sudoedit เริ่มต้นในการกระจายภายหลังของ Ubuntu - แทนsudoeditเพราะค่าเริ่มต้นสามารถถูกแทนที่ในรูปแบบที่ไม่ชัดเจนเว้นแต่คุณเป็นผู้ดูแลระบบ sudoeditปลอดภัยกว่าที่จะบันทึกสำเนาสำรองของไฟล์ที่แก้ไขโดยอัตโนมัติ แต่-Bตัวเลือกบรรทัดคำสั่งnanoจะทำสิ่งเดียวกัน nanoใช้งานง่ายกว่าบรรณาธิการเช่นviหรือemacsซึ่งมีความยืดหยุ่นสูง แต่ต้องเรียนรู้คำสั่งทางลัดหรือโหมดต่าง ๆ มากมาย

หากคุณไม่ต้องการที่จะใช้nanoแก้ไขและต้องการแก้ไขข้อความ Gnome แทนการใช้งานsudo nano -B gksu geditโดยทั่วไปฉันทำสิ่งนี้สำหรับไฟล์ขนาดใหญ่และ/etc/default/grubถือได้ว่าเป็นไฟล์ขนาดใหญ่ได้อย่างง่ายดาย ดังนั้นพิมพ์แทนgksu gedit /etc/default/grub sudo nano -B /etc/default/grubโปรดทราบว่าโปรแกรมแก้ไขข้อความของ Gnome ไม่ได้ทำการสำรองข้อมูลโดยอัตโนมัติ!

หมายเหตุในไฟล์ด้วงของฉัน

ฉันทำการเปลี่ยนแปลงบางอย่างเพื่อด้วงสำหรับความต้องการส่วนตัวของฉัน เช่นภาพพื้นหลังของการเปิดตัวดวงจันทร์ วิธีการทำสิ่งเหล่านี้จะถูกกล่าวถึงในหน้าเอกสารชุมชนของ Ubuntu บน Grub2แนะนำ

โชคดี!


16
ทำให้มันง่ายขึ้นอยู่กับคำพูดของ Einstein: "สิ่งต่างๆควรเรียบง่ายที่สุดเท่าที่จะทำได้ แต่ไม่ง่ายเกินไป" (คำสามคำสุดท้ายจะถูกตัดออกเมื่อคำพูดบางอย่างอ้างถึง) ขอบคุณสำหรับ kudo ...
keepitsimpleengineer

รักมันช่วยฉันได้มาก แต่อย่างที่ฉันเห็น GRUB Customizer มันง่ายมาก: P XD
Ran Shemer

ขึ้นอยู่กับการกำหนดค่าของคุณคุณอาจพบปัญหาที่ "วิธีการบันทึก" (A) ดูเหมือนจะไม่ทำงาน savedefaultมันค่อนข้างเป็นไปได้ว่ารายการเมนูการบูตของคุณต้องการสายเพิ่มเติม ดูคู่มือด้วงสำหรับรายละเอียดเพิ่มเติม หวังว่านี่จะช่วยได้
pdvries

ตรวจสอบให้แน่ใจว่าคุณใช้ SINGLE QUOTES ใน Ubuntu 16 เมื่อเขียนชื่อระบบปฏิบัติการเริ่มต้นไปยังไฟล์กำหนดค่า! มิฉะนั้น update-grub จะให้ข้อผิดพลาดว่าไม่คาดคิด "(" ในบรรทัดนั้นคำตอบที่ดีและมีรายละเอียดโดยวิธี!
hubbabubba

@hubbabubba ขอบคุณสำหรับหัวขึ้นฉันแก้ไขคำตอบ :)
keepitsimpleengineer

78

ด้วยการใช้เล่ห์เหลี่ยมบรรทัดคำสั่งคุณสามารถรับค่าเริ่มต้นของ grub ให้เป็นรายการด้วงเฉพาะ - เช่น Windows - ไม่ว่าเมื่อมีการติดตั้งเคอร์เนลใหม่

ในประเภทอาคาร:

fgrep menuentry /boot/grub/grub.cfg

นี่จะแสดงรายการด้วงทั้งหมดของคุณ - ตัวอย่างเช่น

ป้อนคำอธิบายรูปภาพที่นี่

ไฮไลต์รายการที่คุณต้องการใช้เป็นค่าเริ่มต้น - ตัวอย่างเช่น Windows 7 ในสกรีนช็อต คลิกขวาและเลือกcopy

ชนิด

gksu gedit /etc/default/grub

เปลี่ยนรายการ

GRUB_DEFAULT=0

ไปยัง

GRUB_DEFAULT="Windows 7 (loader) (on /dev/sda2)"

เช่นวางรายการที่คุณต้องการ (รวมถึงคำพูด)

บันทึกจากนั้นพิมพ์

sudo update-grub

แหล่ง


1
ทำงานบน Ubuntu 16.04 โดยมีความแปรปรวนเล็กน้อยหนึ่งข้อ (เปลี่ยน
เครื่องหมาย

21

คุณต้องแก้ไข/etc/default/grubไฟล์เพื่อตั้ง Windows เป็นระบบปฏิบัติการเริ่มต้นของคุณ

ขั้นแรก ระบุตำแหน่งของระบบปฏิบัติการ Windows ในเมนูด้วง หากต้องการทำสิ่งนี้ให้เปิดเทอร์มินัลโดยกดCtrl+Alt+Tและพิมพ์ดังต่อไปนี้:

grep menuentry /boot/grub/grub.cfg

นี่จะแสดงรายการเมนูด้วง ฉันจะใช้เมนูด้วงของฉันเป็นตัวอย่าง:

menuentry 'Ubuntu, with Linux 2.6.38-8-generic' --class ubuntu --class gnu-linux --class gnu --class os {
menuentry 'Ubuntu, with Linux 2.6.38-8-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os {
menuentry "Memory test (memtest86+)" {
menuentry "Memory test (memtest86+, serial console 115200)" {
menuentry "Windows 7 (loader) (on /dev/sda1)" --class windows --class os {

จากนั้นคุณจะเลือกพาร์ติชัน Windows ในกรณีของฉัน "Windows 7 (ตัวโหลด) (บน / dev / sda1)" รวมถึงเครื่องหมายคำพูดคู่และคัดลอก

ขั้นตอนที่สอง เปิด/etc/default/grubไฟล์ เมื่อต้องการทำสิ่งนี้ให้พิมพ์สิ่งต่อไปนี้บนเทอร์มินัล:

gksudo gedit /etc/default/grub

มันจะเปิดไฟล์ / etc / default / grub ด้วย gedit ค้นหาGRUB_DEFAULT=0บรรทัดและเปลี่ยนค่าจาก 0 เป็นรายการเมนู Windows ที่เลือกโดยวางมัน .

GRUB_DEFAULT="Windows 7 (loader) (on /dev/sda1)"

หรือคุณสามารถใช้ค่าจำนวนเต็มที่ระบุตำแหน่งดัชนีของระบบปฏิบัติการ Windows ได้โปรดทราบว่าดัชนีเริ่มนับที่ 0 ดังนั้นในตัวอย่างของฉันค่า Windows OS จะเป็น 4 ดังนั้นคุณสามารถตั้งค่าได้

GRUB_DEFAULT=4

หลังจากนั้นคุณต้องอัปเดตด้วงด้วยการพิมพ์

sudo update-grub

17

คุณสามารถปฏิบัติตามนี้คำตอบ nitstorm นี่ ,

คุณจะต้องเพิ่มตัวปรับแต่ง Grubผ่าน

sudo add-apt-repository ppa:danielrichter2007/grub-customizer
sudo apt-get update
sudo apt-get install grub-customizer

จากนั้นเปิดใช้จากเส้นประเลนส์แอปพลิเคชัน

ป้อนคำอธิบายรูปภาพที่นี่

เมนูด้านบนจะแตกต่างจากของคุณดังนั้นให้เลือกอย่างชาญฉลาดและเลือกรายการ Windows 7 และจากแถบเมนูด้านบนให้เลือกลูกศร ^ เพื่อเลื่อนขึ้นด้านบนเพื่อให้ได้ตำแหน่งสูงสุดขณะทำการบูท

สำหรับการบูตเข้า Windows โดยตรงเลือกpreference และลดการบูตเวลาในการโหลดหน้าต่าง

ป้อนคำอธิบายรูปภาพที่นี่


15

มันสามารถทำได้อย่างง่ายดายด้วยเครื่องมือ GUI ที่เรียกว่า "Grub Customizer"

Grub Customizer คืออะไร

Grub Customizer เป็นส่วนต่อประสานกราฟิกเพื่อกำหนดค่า grub2 แอปพลิเคชั่นอนุญาตให้ผู้ใช้เพิ่มลบตรึงเปลี่ยนชื่อและจัดลำดับรายการเมนูการบู๊ตใหม่

ติดตั้งอย่างไร?

กดAlt+ Ctrl+ Tเพื่อเปิดเทอร์มินัลและเรียกใช้คำสั่งต่อไปนี้ทีละ:

sudo add-apt-repository ppa: danielrichter2007 / grub-customizer
sudo apt-get update
sudo apt-get install grub-customizer

วิธีใช้?

  • เมื่อติดตั้งแล้วให้กดปุ่ม Super Super (ปุ่ม Windows) เพื่อเปิด Unity dash และค้นหา "" และเปิด
  • เลือกกลุ่ม Linux โดยคลิกที่ Linux และเลื่อนลงโดยคลิกที่ลูกศรลงในแถบเครื่องมือ เมื่อเสร็จแล้วคลิกที่บันทึก แค่นั้นแหละ!

ป้อนคำอธิบายรูปภาพที่นี่

จำไว้ว่าคุณไม่สามารถย้ายรายการเดียวออกจากกลุ่มของพวกเขาเช่น Ubuntu ไม่สามารถย้ายออกจากกลุ่ม Linux


ดีไม่รู้ว่ามี GUI สำหรับการกำหนดค่า GRUB2 +1 ในอันนี้;)
ruffEdgz

11

ใช้ตัวจัดการการเริ่มต้นซึ่งคุณสามารถเริ่มจากเส้นประ คุณสามารถใช้ระบบปฏิบัติการเพื่อเริ่มต้นด้วยในเมนูแบบเลื่อนลง

ผู้จัดการเริ่มต้น


3
ขออภัยฉันเพิ่งเห็นว่าคุณบอกว่าตัวจัดการการเริ่มต้นไม่ทำงานในรุ่น 64 บิต คุณสามารถลองแทน grub Customizer ติดตั้ง Grub Customizer ในอูบุนตูเปิดเทอร์มินัลและเรียกใช้คำสั่งต่อไปนี้ sudo add-apt-repository ppa: danielrichter2007 / grub-customizer sudo apt-get update sudo apt-get install grub-customizer เปิดจาก Applications -> System Toiols -> Grub Customize
dago

10

เปลี่ยนค่าของGRUB_DEFAULTใน/etc/default/grubสิ่งที่หน้าต่างอยู่ในรายชื่อด้วงระบบปฏิบัติการสามารถใช้ได้เมื่อคุณบูต ตัวอย่างเช่นในกรณีของฉันฉันจะต้องเปลี่ยนบรรทัดนั้น

GRUB_DEFAULT=0

ไปยัง

GRUB_DEFAULT=5

sudo update-grubหลังจากที่ทำงาน


1
วิธีนี้จะต้องมีการแก้ไขเพื่อระบุรายการเมนูที่ถูกต้อง (สำหรับ windows) อย่างถูกต้องเสมอ วิธีนี้จะใช้งานได้ในการตั้งค่าที่ง่ายที่สุดเท่านั้นและอาจไม่รอดจากการอัพเดตเคอร์เนลหรือการเปลี่ยนแปลงอื่น ๆ ดู: ubuntuforums.org/showthread.php?t=1195275
david6

1
วันนี้เคอร์เนลใหม่ล่าสุดมี 2 รายการ (การกู้คืนและการบูตปกติ) เคอร์เนลอื่น ๆ ทั้งหมดจะถูกจัดกลุ่มใน "เมล็ดอื่น" (หรือสิ่งที่คล้ายกันฉันไม่จำชื่อ) ดังนั้นฉันต้องไม่เห็นด้วยเพราะมันรอดจากการอัพเดตเคอร์เนล
imbaer

ฉันเพิ่มความคิดเห็นเพราะตัวอย่างของคุณใช้= 6
david6

ถูกต้องมันควรเป็น = 5
imbaer

7

ระบุชื่อของรายการ Windows

บน GRUB ควรมีรายการเหมือนWindows 7 (loader) (/dev/sda1)กัน เราจำเป็นต้องรู้ว่าชื่อนั้นอยู่ในเครื่องของคุณดังนั้นให้เปิดTerminalและเรียกใช้คำสั่งต่อไปนี้:

$ fgrep menuentry /boot/grub/grub.cfg

ผลลัพธ์ควรเป็นดังนี้:

if [ x"${feature_menuentry_id}" = xy ]; then
  menuentry_id_option="--id"
  menuentry_id_option=""
export menuentry_id_option
menuentry 'Linux Mint 14 Cinnamon 64-bit, 3.5.0-17-generic (/dev/sda6)' --class linuxmint --class gnu-linux --class gnu --class os {
menuentry 'Linux Mint 14 Cinnamon 64-bit, 3.5.0-17-generic (/dev/sda6) -- recovery mode' --class linuxmint --class gnu-linux --class gnu --class os {
menuentry "Memory test (memtest86+)" {
menuentry "Memory test (memtest86+, serial console 115200)" {
menuentry 'Windows 8 (loader) (en /dev/sda1)' --class windows --class os $menuentry_id_option 'osprober-chain-06B66EA8B66E97C7' {
menuentry 'Microsoft Windows XP Embedded (en /dev/sda4)' --class windows --class os $menuentry_id_option 'osprober-chain-7246B3A846B36C0B' {

ดูบรรทัดที่เรากำลังพูดถึง! Windows 8 (loader) (en /dev/sda1)ในเครื่องของฉันก็คือ เขียนชื่อรายการของคุณที่ไหนสักแห่งและตอนนี้ขอตั้งเป็นค่าเริ่มต้น

การตั้งค่ารายการ Windows เป็นค่าเริ่มต้น

นั่นง่ายมาก!

ก่อนอื่นให้เปิดไฟล์กำหนดค่าของเราด้วยgedit (โปรแกรมแก้ไขข้อความ) เป็นรูทแล้วรันคำสั่งนี้:

$ gksudo gedit /etc/default/grub

ค้นหาบรรทัดนี้:

GRUB_DEFAULT = 0

และแก้ไข0ด้วยชื่อของรายการ Windows ของคุณ ในคอมพิวเตอร์ของฉัน:

GRUB_DEFAULT = "Windows 8 (loader) (en /dev/sda1)"

ตอนนี้เพียงบันทึกไฟล์ปิดgeditและอัพเดตด้วง

กำลังอัปเดต GRUB

เพียงรันคำสั่งนี้:

$ sudo update-grub

ตอนนี้เพิ่งเริ่มต้นใหม่และรายการ Windows ควรจะเน้นเป็นค่าเริ่มต้น!


2

ตัวปรับแต่ง Grub :

เป็นตัวจัดการการตั้งค่ากราฟิก GRUB2 ที่ใช้งานง่ายมาก สำหรับตอนนี้มันอนุญาตให้คุณแก้ไขรายการเมนู GRUB2 เท่านั้น: เรียงลำดับใหม่เปลี่ยนชื่อหรือเพิ่ม / ลบรายการ มันจะช่วยให้การเปลี่ยนแปลงภาพพื้นหลังและหมดเวลาเมนู เนื่องจากสิ่งเหล่านี้เป็นสคริปต์ที่สร้างไฟล์ boot.cfg ขึ้นมา Grub Customizer จะเปลี่ยนลำดับสคริปต์จริงแล้วสร้าง boot.cfg ใหม่ดังนั้นหากคุณเรียกใช้ "sudo update-grub" การปรับแต่งของคุณจะไม่ถูกเขียนทับ


1

จากประสบการณ์ของฉันฉันสังเกตเห็นว่าการเปลี่ยนลำดับความสำคัญในการบูตสำหรับ Win7 / Ubuntu 11.04 ไม่ใช่เรื่องง่าย ยูทิลิตี้เช่น Startup Manager ดูเหมือนว่า isctrying เพื่อเปลี่ยนระบบบูตเริ่มต้น แต่ก็ไม่มีอะไรเกิดขึ้นหลังจากรีสตาร์ท (11.04 ยังคงบูตตามค่าเริ่มต้น) ฉันเป็นเช่นนั้นฉันขอแนะนำ Grub Customiser Grub ใน WebUpd8ซึ่งทำงานได้ดีกับ Grub2 ฉันเพิ่งลบตัวเลือกการบูตที่ล้าสมัยทั้งหมด (มีอยู่มากมาย) เหลือเพียง 11.04 และ Win7 จากนั้นเปลี่ยนลำดับความสำคัญในการบูต ตอนนี้ทุกอย่างทำงานได้ดี :)

โชคดี.


ฉันใช้ตัวจัดการการเริ่มต้นระบบบนเดสก์ท็อปของผู้ปกครองที่ใช้ Windows XP และ Ubuntu 10.04 LTS และนอกเหนือจากข้อเท็จจริงที่ว่าคุณต้องเรียกใช้ซ้ำทุกครั้งที่อัพเกรดเคอร์เนลใหม่มันทำงานได้ดี
Christopher Kyle Horton

หวัดดี! ฉันคิดว่ามันเป็นเรื่องของวิธีที่ Grub2 จัดการกับการติดตั้งเคอร์เนลใหม่ มันไม่ได้ใช้เวลาในการบัญชีใหม่แทรกเมนู grub2 :)
Vincenzo

1

อันที่จริงมันค่อนข้างง่ายที่จะทำ ก่อนอื่นคุณต้องค้นหาว่า Grub ตั้งชื่อรายการ Windows ของคุณเป็นอย่างไร คุณสามารถทำได้โดยดูใน/boot/grub/grub.cfgหรือโดยใช้คำสั่งนี้:

sudo cat /boot/grub/grub.cfg | grep -i Windows | sed -e 's/^.* "//g' -e 's/".*$//g'

คำสั่งอะไรที่ไม่คือการค้นหาWindowsใน/boot/grub/grub.cfgและลบข้อความที่ด้านนอกของ"ตัวละคร

Microsoft Windows XP Professional (on /dev/sdb2)บางสิ่งบางอย่างคำสั่งออกจะเหมือน

ตอนนี้เปิด/etc/default/grubโดยเรียกใช้:

gksudo gedit /etc/default/grub

และเปลี่ยน:

GRUB_DEFAULT=0

ไปยัง

GRUB_DEFAULT="Name of your Windows menu entry"

สุดท้ายเรียกใช้:

sudo update-grub

เพื่อสร้างเมนูด้วงใหม่ และนั่นมัน! การอัพเกรดในอนาคตจะไม่ทำให้เรื่องนี้ยุ่งยาก รายการเมนู Windows ของคุณจะถูกเลือกโดยค่าเริ่มต้นเสมอ


1

แก้ไขไฟล์ / etc / grub / default

คุณพบรายการ

GRUB_DEFAULT=0

เมื่อคุณเริ่มคอมพิวเตอร์ของคุณเป็นครั้งแรกและรับเมนูด้วงรายการแรกในเมนูบูตของคุณคือ 0 ดังนั้นหากรายการที่สองในเมนูบู๊ตของคุณคือ Windows เปลี่ยนตัวเลขนี้เป็น 1

บันทึก, ออกจาก, รันคำสั่ง: update-grub และรีบูตเพื่อดูการเปลี่ยนแปลงใหม่ของคุณ!


@ Daniel Guzman คุณดูเหมือนใหม่สำหรับ Linux / Ubuntu (ตัดสินจากการที่คุณเลือกที่จะรักษา windows เป็นค่าเริ่มต้นระบบปฏิบัติการฉันขอโทษถ้าฉันผิด) ดังนั้นเมื่อคุณทำตามขั้นตอนข้างต้นโปรดใช้ความระมัดระวังและไม่ยุ่ง ขึ้นกับสิ่งอื่นนอกเหนือจากที่เขียนคุณอาจมีปัญหา :)
Nirmik

ฉันอาจจะผิด แต่ไม่ใช้ 11.10 grub2 และ/etc/grub/defaultการเปลี่ยนแปลงที่เก่ากว่าของ grub1 ไม่ใช่หรือ เพียงแค่สงสัย.
ruffEdgz

11.10 ใช้ grub2 ตัวอย่างของฉันมาจาก 12.04 แต่มันเหมือนกัน
tomodachi

1

คุณไม่จำเป็นต้องติดตั้งเครื่องมือปรับแต่งด้วง !!!

ฉันไม่รู้ว่าคุณติดตั้ง Ubuntu อะไรดังนั้นฉันไม่แน่ใจว่าระบบปฏิบัติการของคุณกำลังใช้ grub2 หรือ Grub เก่า แต่มีแนวโน้มว่าคุณจะมี Grub2 มากกว่า

ดังนั้นนี่คือสิ่งที่คุณต้องทำเพื่อ grub2:

grep menuentry /boot/grub/grub.cfg 

คำสั่งนี้ให้เอาต์พุตกับคุณว่ามีความเป็นไปได้ในการเริ่มต้น / OS อะไรบ้าง

นี่คือเอาต์พุตตัวอย่าง:

menuentry 'Ubuntu, with Linux 2.6.38-8-generic' --class ubuntu --class gnu-linux --class gnu --class os {

menuentry 'Ubuntu, with Linux 2.6.38-8-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os {

menuentry "Memory test (memtest86+)" {

menuentry "Memory test (memtest86+, serial console 115200)" {

menuentry "Windows 7 (loader) (on /dev/sda1)" --class windows --class os {

ในขณะที่คุณสามารถสังเกตเห็น Windows 7 อยู่ในบรรทัดที่ 5 ของผลลัพธ์

ถัดไปคุณเปิดไฟล์ / etc / default / grub ด้วยโปรแกรมแก้ไขข้อความและสิทธิพิเศษ sudo และแก้ไขค่า GRUB_DEFAULT เป็น (จำนวนบรรทัดที่คุณมี Windows 7 ลบหนึ่งเนื่องจากดัชนีตัวเลือกด้วงเริ่มจาก 0)

ดังนั้นถ้า windows 7 อยู่ในบรรทัดที่ 5 คุณต้อง GRUB_DEFAULT=4

ถ้า windows 7 อยู่บนบรรทัดที่ 7 คุณต้องการ GRUB_DEFAULT=6

sudo update-grubเพื่อบันทึกการเปลี่ยนแปลงชนิด และนี่คือทุกสิ่ง


0

ครั้งต่อไปที่คุณบู๊ตเครื่องจะนับตำแหน่ง shich Windows 7 อยู่ในเมนู GRUB (จำไว้ว่าคุณต้องนับจาก 0 - เช่นถ้า Windows อยู่ในแถวที่สามตำแหน่งของมันคือ 2 เป็นต้น) บูตเข้าสู่ Ubuntu เปิดเทอร์มินัลแล้วเขียน

sudo gedit /etc/default/grub

จากนั้นปรับเปลี่ยนบรรทัด

GRUB_DEFAULT="0"

ไปยัง

GRUB_DEFAULT="N"

โดยที่ N คือตำแหน่ง (เริ่มต้นจาก 0) ของรายการ Windows7 ในเมนูด้วง บอกฉันหากคุณต้องการข้อมูลเพิ่มเติมเกี่ยวกับเรื่องนี้


ดังนั้นถ้า windows ของฉันอยู่ในตำแหน่งที่ 2 แล้วฉันจะเขียน "2" ในคำสั่งที่คุณเขียนว่า "N"?
Rasmus Mathiesen

ถ้ามันอยู่ในแถวที่สองแล้วที่คุณต้องใส่ 1 (แถวแรกจะมีหมายเลข 0)
ฮวนเซบาสเตียน Totero

1
ถูกต้องนั่นคือสิ่งที่ฉันพูดถึง)
ราสมัสมาธิสเซ่น

1
สิ่งนี้จะพังทุกครั้งที่อูบุนตูติดตั้งเคอร์เนลเวอร์ชันใหม่
David Oneill

1
ที่จริงแล้วมันไม่ได้เพราะเมื่ออัพเกรดเตือนคุณว่าไฟล์ที่ติดตั้งมีการเปลี่ยนแปลงและแจ้งให้คุณถ้าคุณต้องการที่จะเปลี่ยนแปลงแก้ไขหรือติดตั้งใหม่ ไม่เคยมีปัญหาในการอัพเกรด
Juan Sebastian Totero

0

ฉันใช้เครื่องมือปรับแต่งด้วงเพื่อทำสิ่งนั้น คุณสามารถให้มันบูตโดยอัตโนมัติในระบบปฏิบัติการที่แน่นอนทุกครั้งหรือเพียงแค่บูตเป็นระบบปฏิบัติการที่ถูกบูตครั้งสุดท้าย มันง่ายในการติดตั้งและใช้งาน

ในอูบุนตูให้เปิดตัวจัดการแพ็คเกจของคุณ ภายใต้การตั้งค่าคุณควรหา "กำหนดค่าซอฟต์แวร์แหล่งที่มา" คลิกที่นั้นและป้อนรหัสผ่านของคุณ ตอนนี้คลิกที่แท็บที่สองชื่อ "ซอฟต์แวร์อื่น ๆ " และกดปุ่มเพิ่มไปทางด้านล่าง ป้อน PPA สำหรับเครื่องมือปรับแต่งด้วง:

ppa: danielrichter2007 / ด้วงปรับแต่ง

คลิกตกลงจากนั้นบรรทัดใหม่สองสามบรรทัดจะปรากฏขึ้น ปิดไดอะล็อก Software Sources ทันทีและกดปุ่ม Check for updates บนตัวจัดการแพ็คเกจของคุณหากยังไม่ได้เริ่มอัพเดตแพ็คเกจที่มีอยู่ พิมพ์ลงในฟังก์ชั่นการค้นหา: "grub-cus" และคุณจะเห็นเครื่องมือปรับแต่งด้วงที่ด้านบนของรายการ ทำเครื่องหมายสำหรับการติดตั้งจากนั้นคลิกใช้เพื่อเริ่มกระบวนการ ตกลงที่จะติดตั้งการพึ่งพาใด ๆ เพื่อให้พวกเขาได้รับการติดตั้งโดยอัตโนมัติเช่นกัน

หลังจากการติดตั้งคุณสามารถค้นหา grub-customizer ได้โดยพิมพ์ "grub" ลงในช่องโต้ตอบการค้นหาหรือคุณสามารถค้นหาได้ในเมนูภายใต้ Applications> Settings> Settings> Grub-Customizer

อีกวิธีหนึ่งคุณสามารถเปิดเทอร์มินัลแล้วเรียกใช้คำสั่งต่อไปนี้:

sudo add-apt-repository ppa: danielrichter2007 / grub-customizer
sudo apt apt-get update
sudo apt-get install grub-customizer

คุณอาจต้องการเลือกภาพสวย ๆ เพื่อใช้เป็นพื้นหลังของเมนูบูตด้วง

นี่คือลิงค์บางส่วนถ้าคุณต้องการเรียนรู้เพิ่มเติมก่อนเริ่ม:

Launchpad PPA สำหรับ Grub Customizer

คำแนะนำเกี่ยวกับวิธีการ Geek ด้วยการเดินผ่านและรูปภาพ


-1

โดยปกติเมื่อฉันต้อง "ทำให้สับสน" Grub ที่ฉันใช้ "เครื่องมือปรับแต่ง Grub" จะมี GUI เพื่อให้คุณสามารถเห็นสิ่งที่คุณกำลังเปลี่ยนแปลงได้อย่างง่ายดาย เพียงพิมพ์สิ่งนี้ลงในเทอร์มินัล:

sudo add-apt-repository ppa:danielrichter2007/grub-customizer
sudo apt-get update
sudo apt-get install grub-customizer

จากนั้นค้นหาใน Dash สำหรับเครื่องมือปรับแต่งด้วงและเปลี่ยนรายการที่กำหนดไว้ล่วงหน้าเป็น Windows


ฉันไม่ได้ใช้สิ่งนี้ แต่ฉันคิดว่าสิ่งนี้ควรรวมเข้ากับคำถามอื่นเป็นคำตอบหากสิ่งนี้ปิด
RobotHumans

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