Format USB - MBR, Five Partitions, Three Primary

Okay, so I have a little bit of a project. I have a USB that want to format the shit out of (a little bit lol). I’m wondering how to go about doing this, let alone if this is even possible. Essentially I want to have a really handy USB drive, capable of storing the file systems in the following order: FAT32, OS X (Extended, Journaled), NTFS, Ext4, and ExFAT. The USB must be MBR format for compatibility. I’ve heard that once you get to four primary partitions, that is the limit for MBR format, so I’m wondering if only the main three can be left as primary (Mac OS (Extended, Journaled), NTFS, and ExT4).

It’s a tight fit and I’m wondering if this is even possible or if anyone has ever even done this before. I’m wondering what the correct way is about going about doing this if it is.

@wendell if you have some time. Might be easier than it looks/sounds.

Yes, this is correct.

To my knowledge, all modern operating systems can read extended logical partitions from MBR formatted disks, so you should just be able to go

sdc1 - FAT32
sdc2 - HFS+
sdc3 - NTFS
sdc4 - extended
sdc5 - EXT4
sdc6 - ExFAT

To be clear, I haven’t done this exact solution before, but I have done more than 4 partitions on MBR in the past.

I gave it a little bit of a shot in an OS X Yosemite installer for the partitioning, and it successfully made the five partitions, but unfortunately it made the FAT32 partition primary. Looks like the ExFAT partition is there, but unreadable for some reason. The ExFAT partition is there, it’s blue, but it’s not readable in Windows Explorer. The free space I set aside to be made into NTFS is there, but it’s not usable in Windows’s Disk Management.

Not really sure how to set or make partitions non-primary or secondary or whatever.

Is there a reason you need the fat32 to be secondary?

If you have a linux system, Gparted is very verbose about how it organizes the partitions, and will give you full control over that fun stuff.

For a bit of an explanation:

MBR has one type of partition, we call it primary. We hack the “limit of 4” by creating another partition that then holds reference data for a bunch more (I forget how many exactly) partitions.

So basically, you have something that looks like this:





PART 4 (logical/extended container


PART 6 (etc…)

If that makes sense…

So you can’t easily convert PART 1 from primary to logical.

You can reformat them though.

Does that help though?

1 Like

Trying to have the three main primary so I can have the option to boot off each of them as well. Windows, Mac, Linux.
FAT32 at the beginning for reading music files off my FM transmitter in my car, and exFAT for bulk storage. They’re just extras. I’m just trying to see if it can be done, or if it’s been done before.

edit - “option” to boot off them

Okay, so if you want FAT32 at the beginning and to be logical, that’s not possible. (am I understanding you correctly?)

I don’t know the FAT 32 needs to be logical or primary or whatever.
If there’s a way to test that I would be willing to do it, but I don’t know how.
It just needs to work with my FM transmitter so it can read music off of it. That’s why I put it at the very beginning. I don’t think the transmitter is smart enough to know/read/check for all of this stuff.

Okay, so make the fat32 partition #1 and you should be fine. (to the best of my knowledge)

I’ll be honest, I can’t really say for sure if this will work without either having the hardware to test or having you test it yourself. :confused: Wish I could give you a better answer.

Got my dice on Wendell for this one.
I gotta get back to work.
Might return to it later afterwards. idk for sure though

edit- I know GUID can be done, which is easier, but this one I’m not sure because it’s MBR and it’s a tight fit.

uefi only, but amazing:

boot from any arbitrary number of isos. great for live distros. not quite what you asked for, but its open source, so maybe adaptable


There’s also YUMI which works for non uefi, but windows only


Not sure about Windows 10, but I do know that older versions of Windows only show 1 partition of a USB stick, with the others simply not being mountable.
It’s always the first primary one (or first logical if there are no primary partitions at all), so you should be able to set things up to only show what you want it to show.

Easy2boot (FOSS) may also be an option for multiple installers.

This way you should be able to split the stick in 2 partitions, one (primary) data partition at the “beginning” of the stick, and another (primary) one with the Easy2boot install at the “end” of the stick. If you set that second partition as “active”, it’ll be bootable.

1 Like

There’s a little bit more to it.
Windows isn’t even reading or able to write to it correctly. It just shows up as a partition, but it’s not usable. It’s got the FAT32 file system identified, but not much else from there.

I edited my earlier post about booting if that helps.

Alright, I am literally not even to the third partition, only at the second and I think I may have already reached the end of the line on this project. (WOW. )

-Insert generic Alex Jones mind blown gif here-
(I tried to find one but didn’t have shit of luck for some reason? mk? weird… anyway… )

Windows will not properly detect the second partition. I have the first partition as FAT32, and the second as NTFS, and I get error messages in Disk Management just inspecting it. Created the partitions in Linux.

Wonder if I can get exFAT first.
So: exFAT, OS X (Extended, Journaled), NTFS, Ext4.

Maybe cloning with dd commands might be a good idea here too.

Option #1:
Modern Windows/Linux/OS X can all read/write UDF partitions, and older versions of Windows can at least always read UDF. They each have their own quirks to make them work, but there’s a script that sorts it out for you, and makes a UDF partition on a USB drive they will ALL be able to read/write:

Option #2:
Forget about FAT and go with an NTFS partition first. Windows 2000+ can read/write it. Linux will have no problem booting off of it. Newer versions of syslinux work well with NTFS. Many Linux things can be entirely on the NTFS partition (SysRescueCD), while you’ll need better supported partition format somewhere for others (Fedora ISOs). Once you boot-up, install ntfs-3g and you can read/write to the NTFS partition from Linux just fine, too.

If you really need a FAT32/exFAT partition as well, you’ll probably resort to carrying around two USB flash drives.