Old computer IDE vs AHCI and GPT vs MBR

My main desktop system has a Gigabyte Z68A-D3-B3 motherboard. Initially it used to run Windows XP. The system has hard drive caddies so it is very easy to to swap hard drive. (there is also a fixed hdd inside that I use only as a data drive). When I discovered Linux, I wanted to installed Mint in dual-boot but before I did that, I cloned the existing drive onto a new 1TB drive and installed Mint as dual-boot( I kept the original drive as an XP backup). At the time I did not change anything so IDE in bios and MBR as partition table - all works fine.
I have been using Manjaro for quite some time on my laptop and I now want to install it onto a new hard drive on the desktop. The motherboard is NOT UEFI ready, but I can change it to AHCI and I found a post that explained how to install Manjaro on a non UEFI machine using GPT (an unformated 8GB partition at the start).
Apart from having more than 4 partition and been able to use bigger than 2TB hard drive, is there any advantage and/or disadvantage of changing IDE to AHCI and using GPT over MBR? thanks

Parallel ATA - Wikipedia
Advanced Host Controller Interface - Wikipedia

In short: AHCI is slightly faster.

Master boot record - Wikipedia
GUID Partition Table - Wikipedia

In short: GPT is the default on UEFI. You can call it an improved MBR. UEFI legacy mode (BIOS) works with both, but note that pure buggy old BIOS (such as yours) can have problems with GPT, just saying. While GPT can address more than 2 TB, most likely an old BIOS cannot.

1 Like

Thanks for your comment/advice. Apparently there is a BIOS update available to add UEFI to my motherboard, but I’m not going to risk it by messing with the BIOS.
But I have changed the BIOS to AHCI and I installed Manjaro with a GPT partition table (8mb unformated -flag bios-grub, 8gb swap, 100gb /, 200gb home). Seems to work alright but if anything it takes longer to boot?? There is also the annoyance that If I want to put back the old hdd with Mint and XP, I have to remember to change the bios back to IDE or it want boot… Anyway I will use it for a week or 2 and see if I have any issues.

I think I will be be re-installing Manjaro in my system in an IDE and MBR partitioning scheme. As my system is probably to old, AHCI takes about 15/20seconds to load each time I boot? During post after checking the hard drives, I get a message
" Serial ATA AHCI BIOS, Version iSrc 1.2E
Copyright…,
This version supports only Hard Disk and CDROM drives
Please wait. This will take a few seconds."

I have just one more question in relation to install and partitioning.
The install of Manjaro would be by itself (no dual-booting with windows, if needed I will install it in a VM).
From what I know Linux does not care about ‘Primary’ or ‘Logical’ partitions, so after creating the MBR partition table, can I just start by creating an ‘Extended’ partition of the whole HDD and then do all my partitioning within? or does the ‘root’ partition need to be a primary?
Thanks

If AHCI-BIOS initialization takes long then I suppose that is an argument, but I’d still much advise using AHCI over IDE, at least if your drive(s) support(s) Native Command Queue-ing. NCQ allows the drive to on the firmware level reorder requests and therethrough potentially speed up especially “seeky loads” quite a bit, but is not supported over IDE.

Heck, you may not ever notice it in fact, but generally speaking IDE is just really old and crusty; AHCI is much nicer. I’d try and see if e.g. disabling IDE detection by setting drives to “None” in the IDE part of your BIOS gets you your boot speed back

No, for Linux no partition needs to be primary. Note though that you can have up to 4 primaries. Do you need/want more than 4 partitions on a not dual-boot system? Logical partitions are still what they always were: quite the quick hack…

1 Like

I will give that a try and persevere with AHCI
There are actually 3 sets of options i’m playing with to optimize my system -
Legacy BIOS vs UEFI
IDE vs AHCI
MBR vs GPT

The original Windows XP and later addition of Linux Mint (dual-boot) was: BIOS, IDE, MBR
There is a BIOS update (U1B) to enable some limited UEFI but it only ever was a Beta version and there are quite a few posts online with issues about it! so I’m not going to use it.

The current install of Manjaro is BIOS, AHCI, GPT Other than been slower to boot, it works fine - too soon to know if it is stable The BIOS and GPT partition table is a bit of a ‘Hack’ so not sure how stable it will be over time?
I could try BIOS and MBR that’s a proven combo - but other than not having to juggle Primary, Extended,Logical partitions I’m not sure what advantage/improvement GPT has over MBR?

Well, first off all there’s of course the 2TB thing: a disk bigger than 2T can no longer be dealt with by MBR – but a disk smaller than 2T can.

Then there’s the 4 (primary) partition limit of MBR – but if you don’t need more than 4 partitions outright it’s fine.

Thirdly, even if you do there’s always the possibility of using a primary partition as an extended one and plopping down as many logicals as you like inside – but logicals aren’t all that nice as to having the partition table spread out all over the disk and random corruption thereby being able to “break the chain” more or less easily.

In that same vein a GPT table is backed up at the end of the disk; is again a bit more resilient – and/but yah, it’s not a very practical issue I’d say.

GPT is technically a fair bit nicer I feel and most certainly when 4 primaries aren’t enough – but yes, BIOS/GPT is a bit of a (somewhat Grub-specific) hack and on BIOS systems and less than 2T disks I myself use MBR, also given that 4 partitions total are always enough anyway on such systems.

1 Like

As you may know if your read my initial post, I use a hdd caddy in my system to easily swap hdd
So this morning a put back in a hdd with Linux Mint and Windows XP - the OS’s on this hdd were initially install under Legacy BIOS, IDE and MBR.
I forgot to change the BIOS setting back to IDE, (it was set to AHCI) but to my surprise Linux Mint booted fine - is that expected? I expected it not to boot…

Yes, that is expected. IDE and AHCI are just two different controller-types and, like normal in Linux, the Linux kernel includes drivers for both types. I.e., it’s just different drivers that drive the actually found controller; IDE when the hardware is set to be that in BIOS, AHCI when that.

Although generally Windows drivers are more specific and vendor-supplied, in this case of basic hardware moreover the same thing would be true for any Windows install that’d have both drivers installed already as well. In any case certainly no on-disk differences exist between the two; they’re just controller-types / protocols for talking to a storage-type controller.

Thanks ‘Rene1’ you’re been a wealth of knowledge

That would explain why I could not boot Windows XP as it has no drivers for AHCI