ฉันจะตั้งค่า Grub ให้เหมาะสมกับ quad-boot Windows, Mac OS X, Linux และ FreeBSD ได้อย่างไร


8

ด้วงหมดสติกับฉันอย่างสมบูรณ์ ระบบ quad-boot ของฉันใช้งานได้ดีจนกระทั่งฉันอัพเกรด Ubuntu เป็น 12.04 ตั้งแต่ Ubuntu เขียนทับสิ่ง Grub ฉันต้องซ่อมแซมด้วย Mac OS X และ FreeBSD ของฉัน หลังจากนี้การพยายามบูต Mac OS X ทำให้ฉันมีข้อผิดพลาด "ไม่สามารถเปิดไฟล์" และ FreeBSD ให้ข้อผิดพลาด "ไม่มีพาร์ติชันดังกล่าว" Windows และ Ubuntu ทำงานได้ดี

ดังนั้นฉันจึงลองซ่อมอีกครั้งเพราะฉันพบสิ่งที่ผิดพลาดในกระบวนการติดตั้ง อูบุนตูเท่านั้นที่สามารถบู๊ตได้ การพยายามบูต Windows จะทำให้ฉันมีข้อผิดพลาด "ไม่ได้ระบุอาร์กิวเมนต์"

ฉันพยายามซ่อมแซม Grub อีกครั้งเนื่องจากดูเหมือนว่าฉันจะได้ผลลัพธ์ที่แตกต่างกันในแต่ละครั้ง คราวนี้อูบันตูจะไม่ปรากฏในเมนูด้วงอีกต่อไปและข้อผิดพลาดสำหรับ OS อื่น ๆ ก็เหมือนกัน

ดังนั้นฉันจึงบูตเข้าสู่ Ubuntu 12.04 live CD และรัน Boot-Repair พร้อมการตั้งค่าที่แนะนำ ตอนนี้ Grub ถูกข้ามไปอย่างสมบูรณ์และ Windows บูตขึ้น

ฉันไม่รู้เลยว่าเกิดอะไรขึ้นหรือทำไมฉันถึงได้ผลลัพธ์ที่แตกต่างกันทุกครั้งที่ฉันติดตั้ง Grub ใหม่ นี่คือวิธีการตั้งค่าพาร์ติชันของฉัน:

  • sda1 - ไดรฟ์จัดเก็บข้อมูล
  • sdb1 - Windows
  • sdb2 - Mac OS X
  • sdb3 - FreeBSD
  • sdb4 - ขยาย
  • sdb5 - Ubuntu
  • sdb6 - พื้นที่เก็บข้อมูลที่ใช้ร่วมกัน
  • sdb7 - พื้นที่เก็บข้อมูลที่ใช้ร่วมกัน,

นี่คือไฟล์ grub.cfg ของฉัน: grub.cfg

คำตอบ:


1

ดูเหมือนว่าการติดตั้ง GRUB ของคุณจะเกิดความสับสนแล้ว Boot Repair จะเขียนทับมันด้วย Windows MBR

บูตเข้าสู่ Ubuntu 12.04 LiveCD และติดตั้ง Grub2 จากเทอร์มินัล ฉันคิดว่าคุณไม่ได้อัพเกรดจาก Ubuntu รุ่นเก่าที่มาพร้อมกับ Grub Legacy ไม่ว่าจะด้วยวิธีใดคุณต้องการ Grub2 ซึ่งมาพร้อมกับ Ubuntu ตามค่าเริ่มต้น

คำสั่งเหล่านี้เป็นคำสั่งที่คุณต้องการเรียกใช้แทนที่ / dev / sdAX ด้วยพาร์ติชันที่คุณใช้ Ubuntu (ซึ่งดูเหมือนจะเป็น / dev / sdb5 - คุณสามารถตรวจสอบด้วย 'sudo fdisk -l'):

sudo su
mkdir /mnt/root

mount -t ext4 /dev/sdaX /mnt/root
mount -t proc none /mnt/root/proc
mount -o bind /dev /mnt/root/dev
mount -o bind /sys /mnt/root/sys

chroot /mnt/root /bin/bash

sudo grub-install /dev/sda
sudo update-grub

โดยทั่วไปจะโหลดไฟล์ที่จำเป็นจาก Ubuntu จากนั้นใช้เพื่อค้นหาระบบปฏิบัติการทั้งหมดของคุณและตั้งค่าไฟล์ grub.cfg

บางข้อมูลเพิ่มเติมเกี่ยวกับการติดตั้ง Grub2 ที่นี่


0

นี่คือวิธีที่ฉันจะตั้งค่านี้:

1: ติดตั้ง PLoP เป็น MBR (ลิงค์ที่ด้านล่าง)

2: กำหนดค่า PLoP และเพิ่มพาร์ติชันที่สามารถบูตได้ 4 พาร์ติชัน:

a: บูตเครื่องคอมพิวเตอร์

b: เลือก "ตั้งค่า"

c: เลือก "โปรไฟล์"

d: เลือกรายการแรก

e: เปลี่ยนชื่อเป็น Windows หรืออะไรบางอย่าง

f: ตั้งค่า "แสดงในเมนูบูต" เป็น "ใช่" ทำเช่นนี้สำหรับรายการทั้งหมดที่คุณเปลี่ยน!

g: ใส่พาร์ติชั่นและเมื่อเคอร์เซอร์อยู่ที่ "HDB1" ให้กดปุ่ม "B" บนคีย์บอร์ดของคุณ

h: กด "ESC" เพื่อออกและกด "Y" และ "Enter"

i: ทำสิ่งนี้สำหรับ 3 รายการถัดไปนี่คือรายการพาร์ติชั่นสำหรับแต่ละรายการ:

A: HDB1 กด "B" (Windows)

B: HDB2 กด "B" (Mac OSX)

C: HDB3 กด "B" (FreeBSD)

D: HDB4 กด "B" แล้วกด "L" จนกระทั่ง "L1" ปรากฏขึ้น (Ubuntu)

j: ตอนนี้คุณเสร็จสิ้นการกำหนดค่า PLoP หากคุณต้องการกำหนดการตั้งค่าขั้นสูงให้อ้างอิงเว็บไซต์

3: Boot up Ubuntu และ FreeBSD ถ้าทำได้และ update-grub หากคุณไม่สามารถบู๊ตได้ให้เบิร์น SG2D หรือคล้ายกันและติดตั้งด้วงลงใน / dev / sdb3 และ / dev / sdb5

4: คุณควรมีระบบ Quad-boot ที่ใช้งานได้ ยินดีด้วย! ถ้าไม่แสดงความคิดเห็นในส่วนที่คุณมีปัญหาด้วยและฉันจะพยายามช่วย

ลิงค์: PLoP: http://www.plop.at/ SG2D: http://www.supergrubdisk.org/super-grub2-disk/

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