How to install Windows XP from Ubuntu via USB

68,481

Solution 1

Unless you have a modified SETUPLDR.BIN, it won't work from USB directly.

Needed:

    Modified SETUPLDR.BIN

    special stuff in the bootsector of the partition (use ms-sys).

    Modified copy of txtsetup.sif copied to the root level

    NTDETECT.COM copied to root level

WinUSB does not do this, UNetBootin does not do this, the diskpart tutorial does not do this, WinToFlash does not do this, and bit-banging the iso onto the device with dd does not do this.

Rufus does this. However, it is a Windows-only utility (that is unsupported by Wine), so follow the tutorial here (the big post):

https://superuser.com/questions/99478/make-a-bootable-usb-to-install-windows-xp-from-linux

You could also try to use QEMU or VirtualBox where you actually make one of the VM's hard drives be your real target hard dirve, and simply have the hypervisor boot the iso like a CD (actual hardware emulation, not BIOS disk emulation that Grub4DOS does. Yes, a "real fake" as opposed to a "fake fake".). Just note that you will need to make a second hardware profile, because Windows configures itself to a specific hardware configuration during the first part of the installation, and the hardware platform conjured by the hypervisor is not the same as your real hardware platform. Not sure if this would work. I recommend imitating Rufus.

The method of loading the whole iso into memory and booting it usually results in a blue screen at some point. Firadisk stops that blue screen. If you really want to do that method, see this: http://diddy.boot-land.net/firadisk/files/win_iso_install.htm

Edit: Just tried Multisystem (a Linux app) for making a USB drive bootable into the XP installer. It does work, however, it uses the method of loading the whole iso into memory in conjunction with Firadisk, as the above link discusses.

Personally, I find Multisystem's specific solution to creating a USB XP installer undesirable. I had to install xterm and run an installation script that downloaded a bunch of stuff. The resultant USB drive of me only telling Multisystem to make it bootable from an XP installation iso included Grub2, Syslinux, Grub4DOS, a bootable Grub2 iso, Plop stuff, and a bunch of menu entries. You have to know to hit "Grub4DOS" under the first menu, the Grub2 menu, to get to the option to install XP. You'd think that if that's the only thing I want it bootable into, XP installation would be in the first menu (yes, I know, it's not possible with the Grub4DOS method, but how about a note in the menu?). Plus it has to load the whole iso into memory which takes both RAM and time. (What if system doesn't have enough RAM?)

And Multisystem insists on installing Grub2 every time you use it with a thumb drive (even if it's already installed) and even wanted to resize my thumb drive's partition. And puts a bunch of extra on there.

Note: must install Firadisk from the non-free tab for it to be able to make a USB XP installer. A howto I read said to also install Plop for creating a USB XP installer, but I don't see how this is needed.

Another Note: you must boot into the second phase of the XP installer with the Grub4DOS menu option to again load the iso into memory, which is still needed in the second phase. (As opposed to just booting into the target hard drive) That is, if you go for the RAM'ed iso + Firadisk method.

I recommend imitating what Rufus does. Just copy the files on and make a few tweaks.

Jake

Solution 2

You can sure use UNetbootin. Although there are a few important things to be aware of, or else it won't work:

First, be sure to format you usb key to NTFS and flag it as bootable -- you can use gparted to do that (sudo apt-get install gparted). Then run UNetbootin with your usb key already mounted. On its interface, select "Diskimage" and then browse for your .ISO file. Check the "Show all drives" box (so it can find your NTFS formatted usb key) and select the right drive (be careful!) -- on my case, it was "/dev/sdd1".

Click "Ok" and wait. It takes a long time to finish copying all the files. So wait.

Solution 3

This utility will run in Linux (presumably it works with Ubuntu):

http://unetbootin.sourceforge.net/

It says you can just give it an ISO file and it will make the USB stick a bootable copy of that ISO. Then boot off the USB device from the BIOS.

Solution 4

You can use UNetBootin, i think, but you need unetbootin-494 for it to work, because a newer version than that won't find drives formatted to NTFS. I installed my Windows 7 on that way and now I'm trying it with Windows XP.

Share:
68,481
Shaji Ahmed
Author by

Shaji Ahmed

Updated on September 17, 2022

Comments

  • Shaji Ahmed
    Shaji Ahmed over 1 year

    I need to install Windows XP on my machine that currently runs Ubuntu 10.10. I have a slipstreamed ISO for XP and only a USB to boot from. I do not have access to another Windows machine, and my Windows virtual machine does not recognise my USB drive. The solution needs to be purely linux-based.

    • Shaji Ahmed
      Shaji Ahmed over 13 years
      I tried chainloading the ISO from grub4dos but due to the small amount of RAM (512MB) that option is also out for now.
    • RobotHumans
      RobotHumans over 13 years
      you need it in VM or you need it on bare metal?
    • Shaji Ahmed
      Shaji Ahmed over 13 years
      bare metal; i need to replace my Ubuntu installation
    • danizmax
      danizmax over 13 years
      If you're still thinking of using VM and the VM is Virtualbox OSE, then you need to install the one from virtualbox.org/wiki/Linux_Downloads. The OSE version has no USB support and maybe that's your problem.
    • Eliah Kagan
      Eliah Kagan over 9 years
  • user2413
    user2413 over 13 years
    it's in the 10.10 reps also :)
  • Eric
    Eric almost 12 years
    The new version unetbootin doesn't support ntfs usb sticks anymore.
  • JFA
    JFA over 10 years
    I can't see the drive I reformatted or the option to "Show all drives". Are you sure that UNetBootin can write to an ntfs drive?
  • VasyaNovikov
    VasyaNovikov about 8 years
    Did you ever really accomplish the task yourself? From my experience, UNetbootin canNOT install windows XP iso. Only "Vista" and above.
  • VasyaNovikov
    VasyaNovikov about 8 years
    It does not work with windowsXP, only with Vista and above.