public inbox for gentoo-user@lists.gentoo.org
 help / color / mirror / Atom feed
From: Andrea Conti <alyf@alyf.net>
To: gentoo-user@lists.gentoo.org
Subject: Re: [gentoo-user] Mac Mini with Grub booting Mac OSX and Windows?!
Date: Wed, 29 May 2013 11:25:35 +0200	[thread overview]
Message-ID: <bee14129dbe08f0b5d2c8e1c194a789a@3ss.ath.cx> (raw)
In-Reply-To: <1369769791.15065.140661236784825.03643271@webmail.messagingengine.com>

>> We can't have more then 4 primary partitions on a hard disk.
>> 
>> Gentoo needs 2 partitions, /boot and a Virtual partition (that count's
>> as well as one primary) with all the other folders.
>> 
>> Windows will create 2. and Mac OSX minimum 1, am I right?!
>> 
> 
> Your Windows partitions have to be in the first four, but OSX and linux
> partitions can be anywhere thanks to the gpt partition table.

Things are both simpler and more complex than that.

The real problem is that while rEFIt/rEFInd, OSX and Linux have no 
problem dealing with a GPT partition table, Windows only supports MBR. 
(Windows 7+ supports GPT partition tables but it can only boot from a 
GPT disk in EFI mode. On a Mac OSes other than OSX must be booted in 
BIOS emulation mode, therefore the requirement for MBR on the system 
disk for Windows still stands).

GPT and MBR, however, are only indexing schemes: they describe how many 
partitions are on a disk and their location, but apart from providing a 
high level 'type' label they have nothing to do with what's inside a 
partition.

GPT-partitioned disks traditionallly have what's called a 'protective 
MBR', i.e. a dummy MBR which defines a single partition of type 0xEE 
spanning the whole disk; this is intended to keep partitioning tools 
that are not GPT-aware from considering the disk uninitialized and 
inadvertently destroying its contents.
However, nothing prevents you from adding to the protective MBR regular 
entries for some of the partitions, and have the disk look like a 
'normal' MBR disk as far as those partitions are concerned.

The result is called a 'hybrid MBR' and it's the main trick behind Boot 
Camp. There is really nothing special about booting (or installing) 
Windows on a Mac: it just works, as long as you have both a properly set 
up hybrid MBR with an entry for the Windows partition and a suitable EFI 
boot manager.

The former can be done with a tool such as gpt-fdisk (you can easily 
find a binary package for OSX, and there are directions for dealing with 
hybrid MBRs on the author's site); rEFInd is your best option for the 
latter. The standard Apple boot manager will also do, if you only need 
to boot OSX and Windows.

Booting Linux works in a similar fashion. You don't even need a 
GPT-aware bootloader: good old GRUB 1 is perfectly up to the task, as 
long as there is an entry for its boot partition in the hybrid MBR. Then 
you can load a kernel with GPT support, and from there it's just a 
standard multiboot setup.

HTH,
andrea




  reply	other threads:[~2013-05-29  9:25 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-05-28 14:09 [gentoo-user] Mac Mini with Grub booting Mac OSX and Windows?! Tamer Higazi
2013-05-28 14:14 ` staticsafe
2013-05-28 14:17   ` staticsafe
2013-05-28 16:31     ` Tamer Higazi
2013-05-28 19:07       ` Andy Laursen
2013-05-28 19:21         ` Tamer Higazi
2013-05-28 19:36           ` Andy Laursen
2013-05-29  9:25             ` Andrea Conti [this message]
2013-05-29 17:18               ` Andy Laursen
2013-05-30  6:30                 ` Andrea Conti
2013-05-30  0:57               ` Tamer Higazi
2013-05-30  8:04                 ` Andrea Conti
2013-05-30 14:29                   ` Tamer Higazi
2013-05-30 15:01                     ` Yuri K. Shatroff
2013-05-30 17:45                       ` Tamer Higazi
2013-05-30 17:36                   ` [gentoo-user] Mac Mini with Grub booting Mac OSX and Windows?! GOT IT! Tamer Higazi
2013-06-05 12:10                   ` [gentoo-user] Mac Mini with Grub booting Mac OSX and Windows?! Tamer Higazi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bee14129dbe08f0b5d2c8e1c194a789a@3ss.ath.cx \
    --to=alyf@alyf.net \
    --cc=gentoo-user@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox