MBR Hybrid / Boot Tiga Kali Lipat pada Macbook

0

Saya membuat pilihan untuk melakukan triple boot pada 2008 macbook 5,1 saya dengan mac OSX 10.6.8, OS dasar dan Windows 7 (64bit). Saya akhirnya melakukan ini tanpa banyak pengetahuan tentang apa yang akan terjadi pada GPT / MBR saya.

Proses instalasi yang saya ikuti sangat berbelit-belit dan melibatkan menukar drive ke ruang optik dan kotak virtual saya (instal urutan OS X, eOS, W7), tetapi (untungnya) hasil akhirnya adalah bahwa saya sekarang memiliki tiga instalasi berfungsi yang menjalankan boot melalui rEFInd.

Masalahnya - Saya tidak yakin apakah ini berfungsi sebagaimana mestinya. Sebelum saya menginstal W7, terdeteksi OS X dan eOS grub loader dengan benar. Setelah W7 (dan instal ulang rEFInd untuk memperbaiki boot nakal) rEFInd sekarang menyediakan banyak opsi menu:

  • Mac OS (berfungsi dengan benar)
  • eOS (melakukan booting melalui EFI stub loader, tidak ada sebelum W7 menginstal, berfungsi dengan baik)
  • Entri linux (eOS on ext4) (digunakan untuk boot ke eOS melalui grub sebelum W7, memilih opsi ini sekarang melakukan boot ke W7 karena beberapa alasan?)
  • Entri W7 (berfungsi dengan baik)

Selain itu untuk mendapatkan semua booting saya membuat MBR hybrid, tetapi saya tidak yakin apakah saya telah mengaturnya dengan benar karena verifikasi gdisk memberikan output sebagai berikut:

$ sudo gdisk /dev/sda
GPT fdisk (gdisk) version 1.0.1

Partition table scan:
  MBR: hybrid
  BSD: not present
  APM: not present
  GPT: present

Found valid GPT with hybrid MBR; using GPT.

Command (? for help): v

Warning! Mismatched GPT and MBR partition! MBR partition 4, of type 0x0A,
has no corresponding GPT partition! You may continue, but this condition
might cause data loss in the future!

Identified 1 problems!

Command (? for help): 

Pindah ke menu pemulihan dan ketikkan o dan p untuk mendapatkan MBR dan GPT mencantumkan berikut ini:

    Recovery/transformation command (? for help): o

Disk size is 468862128 sectors (223.6 GiB)
MBR disk identifier: 0x4F5D06CB
MBR partitions:

Number  Boot  Start Sector   End Sector   Status      Code
   1                     1       409639   primary     0xEE
   2                409640    137128391   primary     0xAF
   3      *      284540928    468860927   primary     0x07
   4             137128392    284540927   primary     0x0A

Recovery/transformation command (? for help): p
Disk /dev/sda: 468862128 sectors, 223.6 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): AEF39373-7FA0-4FD9-A968-99C6D20E9C8C
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 468862094
Partitions will be aligned on 8-sector boundaries
Total free space is 2765 sectors (1.3 MiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1              40          409639   200.0 MiB   EF00  EFI System Partition
   2          409640       137128391   65.2 GiB    AF00  Fry
   3       137129984       266962943   61.9 GiB    8300  
   4       266962944       284540927   8.4 GiB     8200  
   5       284540928       468860927   87.9 GiB    0700  ROBOFRY

dimana:

  • GPT 1 adalah EFI di bawah MBR 1
  • GPT 2 adalah MacOS di bawah MBR 2
  • GPT 3 dan 4 adalah Linux eOS dan swap di bawah MBR 4
  • GPT 5 adalah W7 di bawah MBR 3

Pertanyaan saya:

  • Apakah saya secara tidak sengaja menghancurkan bootloader grub saya memaksa rEFInd untuk menggunakan EFI stub loader? Bagaimana saya bisa memperbaiki item menu linux di rEFInd untuk kembali ke grub alih-alih W7?
  • Apakah MBR Hybrid saya sudah diatur dengan benar?
  • Sunting: apakah saya perlu menggunakan MBR hybrid?
Marek M
sumber

Jawaban:

1

apakah saya perlu menggunakan MBR hybrid?

Untuk mem-boot Windows 7, ya - setidaknya, jika instalasi Anda semua pada satu disk. Windows 8 dan yang lebih baru biasanya dapat diinstal dalam mode EFI pada Mac, tetapi Windows 7 hampir tidak mungkin untuk diinstal dalam mode EFI. (Saya pernah mendengar kisah sukses, tetapi sulit dilakukan.) Untuk Windows 7, booting dalam mode BIOS / CSM / legacy adalah satu-satunya cara untuk melakukannya dengan andal pada Mac, dan itu membutuhkan MBR atau MBR hibrida. Jika Anda ingin mem-boot Windows 7 dari disk fisik lain, itu bisa berupa disk MBR langsung dan disk utama Anda adalah GPT, tetapi jika semuanya ada di satu disk, seperti milik Anda, maka Anda memerlukan MBR hybrid.

Apakah MBR Hybrid saya sudah diatur dengan benar?

Itu pertanyaan hampir filosofis, karena MBRs hybrid melanggar spesifikasi GPT, sehingga dalam arti, setiap MBR hybrid yang salah. Yang mengatakan, MBR hybrid Anda OK, tapi kurang optimal. Ada dua bagian untuk ini, sungguh:

  • gdiskmemperingatkan Anda bahwa partisi MBR # 4 mencakup dua partisi GPT. Ini adalah sesuatu yang tidak akan dilakukan oleh perangkat lunak Apple, dan itu dapat menciptakan masalah jika alat lain yang memanipulasi MBR hibrida tidak mengharapkan konfigurasi seperti itu. (FWIW, saya membuat gdisk, dan saya memberikannya kemampuan untuk mengatur berbagai hal dengan cara ini demi kepentingan fleksibilitas maksimum; tetapi fleksibilitas semacam itu dapat membuat orang menjadi masalah.) Konfigurasi Anda berfungsi, dan jika Anda memahaminya dan merekam data di dalamnya (seperti gdiskoutput yang Anda tunjukkan di sini) sehingga Anda dapat membuatnya kembali, Anda harus OK dengan apa adanya.
  • Partisi MBR Anda # 2 dan # 4 masing-masing meliputi OS X dan Linux, yang keduanya tidak membutuhkan atau menggunakan partisi hibridisasi; baik OS X dan Linux melihat sisi GPT ketika ditunjukkan disk MBR hybrid.

Masalah pertama hanya semacam-jenis-masalah, tetapi masalah kedua menyediakan cara yang mungkin untuk membuat konfigurasi yang lebih bersih: Karena Windows adalah satu-satunya OS dengan partisi yang perlu hibridisasi, dan karena itu berada di Di akhir disk, Anda dapat membuat ulang MBR hibrid untuk hanya menggunakan partisi pelindung tipe-0xEE dan partisi Windows. Dalam konfigurasi ini, partisi pelindung tipe-0xEE akan mencakup dari sektor 1 melalui partisi OS X dan Linux. Ini adalah pengaturan yang lebih bersih daripada yang Anda miliki dan cenderung membingungkan alat lain. OTOH, mengubah pengaturan sekarang mungkin membingungkan Windows. Secara khusus, jika partisi MBR-nya berubah dari # 3, Windows mungkin gagal untuk boot. Dengan demikian, Anda berisiko masalah serius jika Anda memutuskan untuk mengatasi sedikit keanehan ini di pengaturan Anda saat ini.

Apakah saya secara tidak sengaja menghancurkan bootloader grub saya memaksa rEFInd untuk menggunakan EFI stub loader? Bagaimana saya bisa memperbaiki item menu linux di rEFInd untuk kembali ke grub alih-alih W7?

Yang ini lebih keras. Seperti yang saya pahami, Anda punya satu entri yang diidentifikasi sebagai "eOS on ext4" yang mem-boot Windows, tetapi yang digunakan untuk mem-boot Linux melalui GRUB. Ini terdengar seperti boot loader mode-BIOS pada partisi ext4. Ini seharusnya GRUB, dan kecurigaan saya adalah masih demikian, tetapi konfigurasi GRUB telah diubah menjadi chainload ke Windows tanpa menghadirkan menu GRUB. Jika demikian, mengedit file konfigurasi GRUB ( /boot/grub/grub.cfg), baik secara langsung atau (lebih baik) dengan menggunakan alat setup GRUB ( update-grubskrip atau GRUB Customizer ) dapat mengembalikan menu GRUB.

OTOH, bisa jadi deskripsi rEFInd menyesatkan, atau Windows boot loader entah bagaimana terinstal ke partisi yang salah. (Mungkin Windows memutuskan untuk meletakkannya di sana pada titik tertentu ketika Anda mengacaukan setup MBR hybrid?)

Karena ketidakpastian, saya tidak yakin bagaimana memulihkan GRUB mode BIOS (jika memang seperti itu) ke fungsionalitas. Saya dapat menawarkan beberapa saran, tetapi saya khawatir bahwa saya mungkin akhirnya akan memberi Anda saran yang akhirnya akan menciptakan masalah baru.

Dengan demikian, kecenderungan saya adalah menyarankan Anda untuk mengabaikan entri itu atau menggunakan dont_scan_volumesopsi refind.confuntuk menyembunyikan entri yang tidak berlabel dan alih-alih mengandalkan EFI stub loader untuk masuk ke Linux. Jika Anda ingin cadangan, menginstal GRUB versi EFI dapat memberikan itu, dengan peringatan bahwa menginstal GRUB dapat menyebabkan kudeta boot yang darinya Anda harus memulihkan.

Rod Smith
sumber