Peace in the land of USB
Under a *nix operating system, having multiple partitions on a USB drive isn’t rocket science, it just works. In my case, my USB drive has two partitions because the first partition is a bootable Arch Linux installer.
I have Windows on a desktop at home – mostly for gaming – and many of my colleagues use it too. Since Windows doesn’t do very well with non-Windows partitions I figured I could create a FAT32 partition on the memory stick after the bootable Arch Linux partition. FAT32 is almost ubiquitous and is usable on every common desktop operating system in the world.
Bleh
Unfortunately it doesn’t work straight off the bat. Apparently, Microsoft in their infinite wisdom decided that memory sticks are supposed to have one (and only one) partition. In reality Windows finds the first partition and then ignores any others that happen to be set up:

Err, no, I do not want you to format my Arch Linux installation partition
The trick to getting it working is to fool Windows into thinking the device is not a regular USB memory stick but perhaps a solid-state hard disk which happens to be connected via USB. Yes I know, this is seriously stupid that Windows behaves this way. A solid-state hard disk is just a whopping big (and fast) memory stick after all!
I found a few sources on how to do this however I still had to figure out some things on my own. Specifically, the guides I found either skipped some steps or didn’t provide enough information on where to download the driver package.
This procedure involves manually changing hardware drivers and installing “non-signed” drivers “not intended for your hardware”. I know someone is going to break their system and blame me so I say now that I take no responsibility for any damage you may do to your Windows system as a result of this. Read that again. 😛
Instructions
Download and unzip the driver, originally created by Hitachi, here. Open the cfadisk.inf file in notepad (or your favourite plaintext editor), and find the section labeled [cfadisk_device]. Remove the section highlighted on the right:
Minimize (don’t close) the editor and go to your desktop icons – right-click on My Computer and select Properties. Select the hardware tab and then select [Device Manager]:
Find the device under “Disk drives”, right-click your memory stick and select Properties:
Click the Details tab and in the dropdown box on that page, select “Hardware Ids”. Click the first line in the list of Hardware IDs and press Ctrl+C to copy the name:
Don’t close this dialog, go back to notepad (which was minimised) and paste the hardware ID into where the previous content was removed.
Save the file in notepad and go back to the device’s property dialog window. Click the “Driver” tab and click the [Update Driver…] button. In the windows that pop up, select “No, not this time”; [Next] -> “Install from a list or a specific location (Advanced)”; [Next] -> “Don’t search. I will choose the driver to install.”; [Next] -> [Have Disk…].
Browse to the folder where you have saved the modified cfadisk.inf file. Click [OK]. You will find
there is a Hitachi Microdrive driver listed. Select this and click [Next]. When the warning
appears, click [Yes]. Another warning will pop up regarding a similar issue (these are the “unsigned” and “not intended for your hardware” warnings I mentioned earlier). Click [Continue Anyway]:
At this point I recommend closing all the dialog boxes related to the setup. Finally, remove and re-insert the memory stick into your USB port and you should find that the extra partitions on the stick are accessible. In the worst-case scenario, you might still need to partition the disk however the hard part is over. 🙂
Cheers for was really helpful. I had to do this today to try and get ubuntu running on my O2 joggler. This was really useful. Thanks again!
I have used your solution for Multiple Partitions on several machines
with winXP,vista and win7 32-bit. Works great!!
I have just purchased a new computer with win7 64-bit. Do you have
a 64-bit SSD driver solution?
I found one possible solution relative to a DELL laptop, but don’t really know how to install a .drv file?
Would you be willing to work on this problem?
Here is the URL for the discussion about the DELL laptop
http://blogdisco.com/2010/01/07/
dell-vostro-v13-review-unboxing-and-teardown/
This may lead to a solution.
It is difficult to buy a new computer without win7 64 bit at “big box”
computer stores.
Regards,
Rog Parmenter