I installed backtrack 3 onto a USB flash drive. I installed it on a fat32 primary partition (sda1), gave it a 1gb swap, a ext2 storage partition (sda3), and a fat32 storage (sda4).

When I boot to windows and insert the flash drive, it shows up in My Computer, as having 1.5GB available (size of the primary partition) although it is an 8gb drive. I thought this made sense but I'm now wondering how to get windows to recognize the other fat32 partition and assign it a seperate drive letter... But I had to use qtparted in linux to partition the USB drive so I worry that windows is unable to recognize a partition table on a USB flash device. Is it possible to get windows to recognize the second partition?

Dani AI

Generated

Windows will normally show only the first partition on a USB thumb drive because most sticks report themselves as "removable" devices. The Windows mass-storage driver therefore only mounts the primary volume. That explains why the FAT32 partition shows in My Computer while the other partitions (ext2, swap, a second FAT) are invisible to Windows.

Practical options (pros/cons):

  1. Make the stick appear "fixed" so Windows will mount all partitions. This requires a vendor- or controller-specific utility that flips the removable-media bit (RMB). Identification of the USB controller (from Linux dmesg or lsusb, or Device Manager IDs) is required. This can work but is risky: always backup data first and accept that flashing firmware or toggling RMB can brick the device.

  2. Keep a single Windows-visible FAT32 partition and put the Linux filesystem inside a file (loopback image). Linux can mount that file as an ext2 volume while Windows just sees a regular file on FAT32. Example (create a 2 GB ext2 image and mount it in Linux):

dd if=/dev/zero of=linux.img bs=1M count=2048
mkfs.ext2 linux.img
sudo mount -o loop linux.img /mnt/usbext

Note: FAT32 has a 4 GB single-file limit; adjust image size or use exFAT on newer Windows if cross-platform compatibility is needed.

  1. Use hardware that reports as fixed (some enterprise USB sticks or external HDDs) or a card-reader/enclosure that enumerates as a fixed disk. That avoids firmware hacks.

Additional notes: Windows drivers like Ext2Fsd can expose ext partitions on Windows, but they only help if Windows can see the partition at all. Given already partitioned the stick in Linux, the loopback-image approach is the least invasive; the RMB/firmware route is the only way to make Windows directly mount multiple physical partitions, but it is device-specific and potentially destructive. As pointed out, several Windows-side guides cover the RMB/firmware method, but those require the exact controller utility and careful backups.

Recommended Answers

All 2 Replies

no, but I tried using the bootit tool, and diskmgmnt, but it didn't work... I tried to just assign a drive letter and path to the fat32 partition, however diskmgmnt didn't even recognize it as a fat32 partition, and when I tried to set the drive letter it said it wouldn't work because the volume wasn't "enabled," and to enable it I had to restart my computer. Though it didn't work. Also bootit didn't make the flash drive recognized as a fixed volume. Maybe I'll try deleting and recreating the partition since I'm almost certain linux would still recognize it--I just have to transfer files out of it first.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.