Boot windows xp .iso on Ubuntu-netbook with ONLY usb

I have a toshiba notebook that has Ubuntu 10.10 only on it.

It has no cd-rom, only usb ports
I have a windows xp .iso and i want to boot/install it on my machine either as the only operating system or alongside.

I could get access to a windows pc if that helps.

I have tried many things. Please help.


For those that are trying to make a bootable USB stick for installing Windows 7 and/or Vista, (and now XP) see [EDIT2] (and Update) below, BEFORE reading the rest of this posting.

OK I’m only going to answer this because I’m in a good mood tonight… this is not really a Linux question, and would be more at home on a Windows forum…
(next time someone posts a Windows question on a Linux forum… I may not be in such a good mood :wink: )

  1. Create a NTFS or FAT(32) partition on the hard drive (or just a folder on the bootable USB stick… see step 4)

  2. Create a folder on the new partition called setup

  3. Unpack the XP.ISO and copy EVERYTHING to the setup folder you just created

  4. Create a bootable M$ DOS USB stick (or floppy if you have one)… instructions here:
    Boot From A USB Flash/Pen/Key Drive
    bootdisks here:
    Bootdisk.Com - Free Windows Bootdisks, Free DOS boot disk
    (BTW, from distant memory… I think you have to load himem.sys from config.sys and smartdrv.exe from autoexec.bat … or strip the
    DOS bootdisk down to just the essentials… I think winnt.exe will run without smartdrv.exe loaded, but the install takes hours)

  5. Boot from the USB stick (or floppy), and when you’re at the DOS prompt enter:
    (assuming the partition is being seen as the C: drive)

cd setup\i386

(hitting enter after each line)

This will start the normal XP installation routine… DO NOT let it format the partition… just install it to the same partition that contains the setup folder.

Obviously if the partition is being listed as something other than C: you’ll have to adjust the first one of those commands.

So, in summary… all you need to do is unpack the ISO to somewhere DOS can read… boot to DOS… cd to the \i386 directory… and run winnt.exe
(DO NOT attempt to run \setup.exe or \i386\winnt32.exe from the unpacked ISO… they won’t work… it MUST be \i386\winnt.exe)


Once XP is installed and tested… you can either…

a) reinstall the GRUB bootloader from a Linux LiveUSB… you’ll have a dual boot system

b) reinstall Linux from a LiveUSB completely (to the existing Linux partition… you’ll have a dual boot system

c) use a Linux LiveUSB to delete the Linux partition(s), and resize the Windows partition to fill the drive… you’ll be back to Windows only, and a world of viruses, malware, instability, and cost… have fun (!)


Oh… and obviously, this is only going to work if you can boot from a USB stick or have a floppy drive, or some other means of booting to DOS… ie. a bootable DOS CDROM etc.

The comment below about needing a 1gb USB stick only applies if you are going to put the setup directory on the USB stick… otherwise you’ll only be using the USB stick to boot DOS, you will be extracting the ISO to the partition you created on the hard drive, so the USB stick would only need to be 1.44mb or larger :wink:

On the other hand if you have a 1gb USB stick, you could also extract the ISO to directoy on it as well as making it a bootable DOS disk… the point is, it doesn’t matter where the i386 directory is located as long as the DOS bootdisk can access it.

A new MUCH easier way to create a Windows (and/or Linux) installation USB stick in Linux

Download and install MultiSystem:


Once installed, plug in your USB stick and fire up MultiSystem… in MultiSystem, select your USB stick, and click Validate… click OK to install the GRUB bootloader, you will now be in the main MultiSystem interface… click Non-Free > Installing Non-Free part, now click:
Download PLoP Bootmanager
Download firsdisk.ima
click Close.
you will be back at the main interface…

Now just drag any ISO image into the Drag/Drop ISO/img box and it will create a bootable USB stick with that OS on it… hence the name.

It works for:
Windows Vista
Windows 7
and just about all Linux distros.
but does NOT work for Windows XP (would be nice if it did). ← See UPDATE below


Multisystem now DOES work with Windows XP


You can even have more than one OS on it… hence the name.

one last thing… when you boot it, you will get a GRUB type boot menu… at this menu, to boot Vista/Win7 select Syslinux… to boot XP select Grub4dos

Easy, and no need to sully your shiny Linux box with Windows at all… even as a VM :slight_smile:

Obviously Windows can ONLY be run as an installation medium and NOT as a LiveUSB (although it WILL also create a BartPE on USB), but any Linux LiveCD images you write to the USB stck can be used as “Live” OS’s.

Links -

Another option would be to follow these instructions, but instead of using Win95, copy everything from aa XP disk/ISO… then run winnt.exe from the i386 directory to start the XP installer.


I am going to try it now.

I’ll keep you posted!

First, check if you have the USB has a capacity of at least 1 GB, because the action itself is 680MB-700MB of space. Restart your laptop. You should go to the Advanced tab from BIOS option and enable USB option. You should choose USB to boot first. Press the F10 key or whatever is necessary to save the BIOS settings and press enter then it will automatically start loading your operating system files from USB.

You can just imitate what Rufus does. No loading the whole iso into memory (Multisystem currently uses this method), and no having a bunch of stuff on the thumb drive you don’t need (Multisystem is pretty bloat-tastic).

See here: Make a bootable USB to install Windows XP from Linux - Super User .

The problem with the method of running i386\winnt.exe from DOS is that you’ll only be able to install Windows XP to a FAT32 filesystem (unless you find a DOS NTFS driver?). You may convert to NTFS later, but old programs may have performance issues.

Hi SpawnHappyJake, and welcome to the forum :slight_smile:

Nice find … thanks for that, it’ll no doubt be handy for someone :slight_smile: