I have a flash drive with a Debian installation on it, with lots of partitions (however many it makes if you choose all separate during installation). Anyways, what I want to do is create a FAT partition on the drive, that will be readable by a Windows computer if it is inserted.

I have tried doing this using GParted from an Ubuntu live cd (I don't have a graphical environment installed, and I'm not that great yet with the tools available through bash). I have gotten a FAT partition created, but it is never accessible from Windows. I have tried making it the first partition, and I have also tried formatting that partition from within Windows.

How can I accomplish this, keeping in mind that I already have a working system, so I'm not starting from scratch. (I only want the FAT partition readable by Windows, obviously.)

Here is the output from fdisk:

Disk /dev/sda: 8010 MB, 8010072064 bytes
255 heads, 63 sectors/track, 973 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00020f09

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           6          42      297202+  83  Linux
/dev/sda2              43         493     3612673    5  Extended
Partition 2 does not end on cylinder boundary.
/dev/sda3               1           5       40131    b  W95 FAT32
/dev/sda5              43         211     1349632   83  Linux
/dev/sda6             211         298      696320   83  Linux
/dev/sda7             298         326      227328   82  Linux swap / Solaris
/dev/sda8             327         339       98304   83  Linux
/dev/sda9             339         493     1236992   83  Linux

Partition table entries are not in disk order

sda3 is the partition I created, at the physical beginning of the disk. Prior to that change, sda1 started at the beginning.

  • Please post the output of sudo fdisk -l /dev/$WHATEVER (where $WHATEVER is the device of the flash drive itself, for example sdb).
    – user
    Mar 23, 2012 at 8:52
  • @MichaelKjörling I updated with that information. Mar 23, 2012 at 16:48
  • This looks like a problem on the Windows side, which we're not experts on here. I've flagged your question for migration to Super User, where Windows is on-topic (do not repost!). Mar 23, 2012 at 19:00

1 Answer 1


There is probably nothing wrong with the partition you created.

The driver Windows uses for USB Mass Storage Devices has a limitation, making it so that windows only shows the first partition.

I don't recall whether it only shows the very first partition in the drive or the first to show up in the partition table (also, I don't recall whether the entries in a partition table need to be in order...).

So you just need to make sure the partition Windows choses is the FAT one, either by moving partitions around or by tweaking the partition table.

(Sorry for not being able to provide a step-by-step guide, but I hope this still helps.)

  • +1 Spot on. It's certainly the first partition problem, and he has to move the partitions around if he wants it to be read.
    – Secko
    Mar 23, 2012 at 11:57
  • @Secko and njsg I updated the question with the output of fdisk -l, which I think will help. I think I understand the problem, but I'm not really sure how to fix it. I'm guessing using fdisk to change the table, and then edit /etc/fstab with the new entries (I am working on a project with lots of identical hardware, so I clone the disk to another, many times. I was having issues with UUID, so I changed to the /dev/sdaX style.) Mar 23, 2012 at 16:51

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .