mintybits wrote:Imaging that the TOC has 4 primary entries for partitions and unlimted "secondary" (for some reason they have been called extended or logical) entries.
Note that there is a difference between extended and logical partitions. An extended partition is essentially a special type of primary partition that serves as a placeholder for logical partitions. Aside from creating them in a partitioning utility, you don't work directly with extended partitions -- you don't create filesystems on them, for instance. For most purposes, it's primary and logical partitions that are important. Extended partitions just serve as a way to mark out space for the logical partitions on the primary partition table.
It is not the case that logical partitions are literally "inside" an extended partition...this is just a conceptual thing.
All data structures are conceptual -- physically speaking, it's all about magnetic alignment effects on disk platters. It's not generally useful to think in such terms, though (unless you're a hard disk engineer). If you consider the data structures to be "real," then logical partitions
are literally inside extended partitions. Logical partitions occupy space on the disk that's allocated in the primary partition table by the extended partition. Even the data structures that define the logical partitions (known as Extended Boot Records, or EBRs) reside inside the extended partition space. You can read more about it
on Wikipedia, among other places.
GPT...is not well supported by linux's boot loader and as far as I know it is still a right pain in the arse to make linux boot off a GPT TOC disk. It is no problem at all to have a GPT disk in your system for storing files and such, it is just a pain to install and boot off.
This isn't entirely accurate. On BIOS-based computers, GRUB 2 supports GPT just fine, and has for a long time. The official last version of GRUB Legacy doesn't support GPT, but versions that do are readily available. I've heard that even LILO works with GPT, although my one test with it was inconclusive. The main problems with GPT on BIOS-based computers are buggy BIOS implementations and lack of knowledge among users (and to some extent distribution maintainers). I describe the BIOS issue in detail
here. In short, some BIOSes try to do too much and so won't work when booting a GPT disk. There are workarounds, but most users don't know about them. Fortunately, most computers aren't afflicted with buggy BIOSes. Because some are, though, unless you have a good reason to do so, I don't recommend using GPT as a boot disk on a BIOS-based computer; but it
is possible to do so, and it's
usually not very difficult to do so if you know the basics of how to do it. (Mainly you just need to ensure you've got a
BIOS Boot Partition on the disk.) Also, although Linux can boot from a GPT disk on a BIOS-based computer quite readily, Windows can't (although Windows Vista and later can use GPT data disks). Thus, in a dual-boot configuration, you really should stick with MBR.
Most computers sold in the last 1-1.5 years have used UEFI rather than BIOS. Although these computers provide a BIOS/legacy boot mode, if they're booted in their native EFI mode, they should normally have GPT disks.
Linux's EFI boot loaders all support GPT just fine. In fact, it's really more a matter of
EFI supporting GPT, since under EFI, boot loaders rely on the firmware to understand the partition table. (This is unlike BIOS, which is too stupid to understand partition tables -- at least, the core BIOS functions are. Recent BIOSes tend to be much smarter, which is where they sometimes run into problems.) When installing Windows on an EFI computer, GPT is required (for the boot disk).
All this is largely academic to wm009, whose problems suggest (s)he's using a BIOS-based computer with MBR. It's worth keeping in mind for the future, though; computers that ship with Windows 8 logos
must use Secure Boot, and therefore UEFI, and therefore GPT. There are a lot of headaches surrounding this because Linux distribution vendors haven't been pro-active enough in anticipating this important shift from BIOS to EFI. The problems are mostly related to the EFI firmware, though, not to the partition table type. The problems are getting ironed out, but it'll probably be another 6-18 months before installers and the boot process are really working smoothly on new computers.
If you are new to linux and aren't a bleeding edge technology fetishist, I'd recommend keeping things simple for now. Use MS-DOS (aka MBR partitioning) and install Windows first, as has already been suggested. You then hve 2 primary slots for linux root and swap. Simple.
I mostly agree with this
if the computer is BIOS-based (as wm009's seems to be). I don't advise placing Linux on just two partitions (root and swap), though. A separate /home partition is very useful, even for relative novices, unless you expect most of your Linux data to be shared with Windows. Also, a separate cross-OS data exchange partition is useful -- forcing Linux to read
and write the Windows boot partition to exchange files is asking for trouble. Thus, given that recent versions of Windows like to consume at least two primary partitions, you're up to a total of 5-6 partitions, meaning that you'll have to create some of them as logical partitions. (That bumps the total to 6-7 partitions, if you count the extended partition separately.)
Everything can be changed later, if you need to, so don't get too hung up about it.
This is true, although resizing partitions can be risky, and converting from primary to logical or vice-versa can be tricky. (For the latter, my
FixParts program is useful.)