254

I want to burn a Windows ISO to a USB device in Ubuntu. How do I do this?

I know how to burn a Ubuntu ISO into a USB device, but with a Windows ISO it's not the same.

Nicolas Raoul
  • 11,603
alerbeham
  • 2,565

10 Answers10

284

UNetbootin should work: http://unetbootin.sourceforge.net/

Or you could try a bit-by-bit copy:

  1. Insert the USB device and then open Disk Utility (in 10.10 and older, System -> Administration -> Disk Utility).
  2. Select the USB device from the list in the left of the program and detect where it was mounted: /dev/sd[1 letter][optionally 1 number]. For example, /dev/sdc or /dev/sdc1.
  3. Make sure the USB device is unmounted (not safely removed, but unmounted) If it is mounted you can unmount it:

    sudo umount /dev/sd[1 letter][optionally 1 number]
    
  4. Assuming the .iso file is in your home folder, open the terminal and write:

    sudo dd bs=4M if=[ur .iso] of=/dev/sd[that 1 letter]
    

    Example:

    sudo dd bs=4M if=windows7.iso of=/dev/sdc
    

And wait for it to finish. (The "bs=4M" - bit is optional, just makes it faster.)

Rmano
  • 31,947
  • 23
    Another way I detect which driver is it: I write "sudo dd if=kubuntu.iso of=/dev/sd" and press Tab a few times before inserting the USB, than I insert the USB stick and press Tab a few times again, and detect which one was added, for example sdc and sdc1 appeared, than I add c at the end and press enter. – Lilian A. Moraru Jan 28 '12 at 19:40
  • 20
    @LilianA.Moraru UNetbootin allows you to create bootable Live USB drives for Ubuntu, Fedora, and other **Linux distributions** without burning a CD.. Have you ever succeeded to make a windows usb with it? – Cornelius Apr 25 '14 at 17:53
  • Should USB device size match the size of ISO? – Dims Oct 04 '14 at 20:22
  • Will this dd program also create e.g. memtest.iso to be bootable ? – EdiD Oct 07 '14 at 11:56
  • 6
    The way I understand it, it's also a good idea to run sudo sync afterwards, to make sure that dd has finished physically writing to the stick. – Ryan Kennedy Nov 23 '14 at 22:43
  • @EdiD No, it could be any size with the condition UBB size > iso size – Yuri Nov 28 '14 at 05:44
  • you can check the drive to unmount with sudo fdisk -l – mwm Dec 29 '14 at 22:11
  • 7
    As from 2015, Debian and Unetbootin should not be used together https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=775689 How the dd-solution works I am still trying to figure out. –  Mar 25 '15 at 12:48
  • 38
    If you've got a slow USB drive, you can check the current state of dd by sending it a USR1 kill msg: sudo kill -USR1 $(pidof dd) from another terminal. It will then print its status in its own terminal. – Mitja Apr 24 '15 at 19:32
  • 1
    @LilianA.Moraru, Why did you choose bs=4M instead of bs=40M? – Pacerier May 03 '15 at 14:25
  • 1
    Doesn't work for me. It wipes the partition table. – ptkato Jan 01 '16 at 13:46
  • 1
    @Patrick That's intentional. Just try to boot from it. – a06e Apr 02 '16 at 07:44
  • @becko I had the same problem as Patrick. I could mount the drive in dolphin, but gparted couldn't regocnize the partition table. It wouldn't boot either. The only way I've got it to boot is by creating an empty partition, mounting the ISO and copying the files over manually. – Mike Jul 05 '16 at 05:15
  • 1
    @becko See http://onetransistor.blogspot.com/2014/09/make-bootable-windows-usb-from-ubuntu.html – Mike Jul 05 '16 at 05:21
  • 10
    doesn't work at all – Pavel Sep 09 '16 at 01:07
  • The steps below work better. It seems like these steps completed way too fast for me . when i followed the gparted + format to NTFS and then did the dd it worked fine – Nicholas DiPiazza May 09 '17 at 23:24
  • 8
    You can add a status=progress option to dd to see progress output in real time. Also, you can see the list of all drives by running lsblk and use it to find out the identifier of your USB flash drive. – Pastafarianist Jan 10 '18 at 23:26
  • Its not output any sort of message, its been like 10 minutes. Should I be worried? Is it actually running? – Abhishta Gatya Mar 31 '18 at 04:33
  • http://unetbootin.github.io/linux_download.html – Ahmad Ismail Jun 27 '18 at 05:37
  • 3
    Did not work for me – cjohansson Sep 25 '19 at 10:06
  • Didnb't work - "dd: failed to open '[Win10.iso]': No such file or directory" - yet the file is clearly there (I put it in my "home" folder, so I could match the instructions as closely as possible)... Downvoting this, because it clearly doesn't work, and I'm not the only one that has made this claim. – Gregory Opera Apr 25 '20 at 12:03
  • I ended up just using a program on my daughter's Apple iMac, from memory... Some program Etcher recommended, when I tried to burn a Windows 10 image under Linux using Etcher.

    I can't test your suggestion though, because I only needed Windows for about five minutes, and we don't use Windows on any of our computers (i.e. so I don't have a copy anymore).

    – Gregory Opera May 26 '20 at 20:50
  • The dd solution works if computer BIOS has support for UDF filesystem booting. The windows 10 iso comes with this filesystem. If BIOS does not support boot from UDF a raw copping of ISO file to the USB pendrive is not enough. See https://superuser.com/a/1063221/579659 – digital_infinity Jun 19 '20 at 07:52
62
  1. Insert the USB device, then run gparted.

  2. Select the USB device from the list near the upper-right corner of the GParted window and detect where it was mounted: /dev/sd[1 letter] (mine was /dev/sdc).

  3. Make sure the USB device is unmounted (right-click and select unmount).
  4. sudo dd if=[PATH TO YOUR .iso FILE] of=/dev/sd[THAT 1 LETTER]

    In my case: sudo dd if=/home/downloads/windows7.iso of=/dev/sdc

You must run dd as su or sudo. It's worth mentioning that gparted requires su as well, but will typically use gksudo to prompt for the password.

This means you can lock gparted to the launcher on a persistent liveboot USB for field diagnostics.

nuts
  • 154
goeroetje
  • 621
  • 2
    +1 Slightly altering this let me boot my DIY OS too. – geometrian Jul 11 '13 at 04:39
  • 2
    didn't work for me just using /dev/sdc[letter], also needed to specify the partition like /dev/sdb1 for dd to copy. however, usb booting won't work – n3rd Jun 20 '14 at 19:22
  • 1
    @HertzelGuinness, Why do you love ubuntu instead of the many other distros? – Pacerier May 03 '15 at 14:28
  • @Pacerier meant the linux side, never mind the distro. (Personally, i use other distros as well...) – Hertzel Guinness May 03 '15 at 18:23
  • 36
    Why are you formatting it to NTFS? When you dd to the block device, it's going to wipe out whatever formatting you have there... – TJ Ellis Jul 31 '15 at 18:05
  • My device is /dev/sdd/, but works only when I put /dev/sdd1. Any clue why this happens? It also gives me an error saying that the device is out of space, but it writes only 10MB. – ptkato Oct 24 '15 at 16:15
  • @Patrick You might need to umount /dev/sdd - that is unmount the device from the file system before running dd. – alex.pilon Apr 01 '16 at 01:07
  • 7
    Doing the direct dd copy (on Ubuntu 14.04) with a Win10 iso was a little surprise for me, as it created an UDF file system on the flash (I was expecting it to be the iso file system). It didn't boot on my Lenovo P50, though (but I have to admit I might have too restrictive boot settings in the BIOS :)) Using winusb by this article eventually did the trick. – tlwhitec Mar 15 '17 at 14:01
  • @tlwhitec thanks a bunch! I've been try lots of other methods the whole day. Yours is the only one that work! – paibamboo Sep 10 '17 at 12:44
  • @tlwhitec thanks a bunch! I've been try lots of other methods the whole day. Yours is the only one that work! – paibamboo Sep 10 '17 at 12:44
  • Great to know @paibamboo, you can also thank me by upvoting my comment ;) – tlwhitec Sep 13 '17 at 15:11
  • Did not work for me – cjohansson Sep 25 '19 at 10:06
23

If you boot with UEFI (not BIOS or UEFI with BIOS compatibility mode (a.k.a. CSM)) all you'll need is GParted and a file manager.

The ISO must be configured for UEFI boot for this to work. I've successfully done this with both Windows 8.1 and Ubuntu 14.04, but I can't vouch for any other OS. (Edit: I just tried this with Windows 10 without success. Don't know why, but WinUSB worked so I didn't investigate further.)

This is what I do to create a bootable USB drive for UEFI firmware:

  1. Create a GPT partition table on your USB drive. In GParted, chose "Device" and then "Create partition table...". Choose gpt in the dropdown.
  2. Format a partition on the USB drive to FAT32 using GParted. All UEFI compliant firmwares must support FAT12, FAT16 and FAT32, so any of these should be fine, but NTFS will not work.
  3. Mount the USB drive like you would any other external storage so you can access the filesystem on the partition you created.
  4. Mount the ISO you wish to add to the USB drive so you can access the files in there.
  5. Now, when you have access to both the ISO and the USB drive as filesystems in your file manager (Nautilus or whatever) just copy and paste all files in the ISO to the USB drive.
  6. Add the 'boot' flag to the partition you've created and added the files to. In GParted, right click the partition, choose "manage flags" and then check the "boot" option.

(While testing this I couldn't mount the USB drive anymore after setting the boot flag. I don't know why, but GParted could still see it and the end result was still a bootable USB drive, so I guess it doesn't really matter.)

  1. Restart your computer and choose to boot from the USB drive.

Once again: Please note that for this to work, your computer's firmware must be UEFI compliant and the ISO must be ready for UEFI boot.

If you find an EFI directory in the ISO that's usually a good sign.

To see whether you're currently using UEFI boot, run sudo efibootmgr -v in a terminal. If it lists a number of boot options you're good to go. If you're using BIOS compatibility mode you'll see something like this:

Fatal: Couldn't open either sysfs or procfs directories for accessing EFI variables.
Try 'modprobe efivars' as root.

For more information on UEFI, please read this excellent essay on the subject: https://www.happyassassin.net/2014/01/25/uefi-boot-how-does-that-actually-work-then/

Also, I don't think Ubuntu will work with Secure Boot enabled, so you'll have to disable that to be able to use UEFI boot with Ubuntu.

Lars Nyström
  • 658
  • 1
  • 6
  • 20
  • 1
    Shouldn't USB have a GPT partition table as well? – VRR Apr 15 '15 at 10:34
  • 2
    Ah, yes you probably should. Apparently my firmware supports msdos partition tables as well, which is why I didn't have that problem. That may not be the case for everybody. All UEFI compliant firmwares must support GPT partition tables so if you're using GPT the USB drive should work with even more firmwares. I'll update my answer. – Lars Nyström Apr 15 '15 at 15:53
  • 2
    It appears I can't mount the drive in Ubuntu if it uses a GPT and also has the boot flag set. It worked when it was still using an msdos partition table, which is weird. Anyway, even though I couldn't mount it, it was detected by my firmware as a bootable device and worked just as well. – Lars Nyström Apr 15 '15 at 16:29
  • 2
    Hm,try just to set GPT FAT32 without cahnging flags. It should mount then and boot as well. – VRR Apr 15 '15 at 17:38
  • 1
    I don't have time to test this more, but my answer works for me and should for everybody with UEFI boot (which should be most people by now) so I'm just going to leave this here now. Feel free to edit my answer if you think something is wrong. – Lars Nyström Apr 15 '15 at 18:08
  • I don't believe I am allowed to edit your question in that manner. If you're interested to expand the answer feel free to use some of my responses. – VRR Apr 16 '15 at 06:22
  • This lets me boot the Windows installation from the stick, but I can't actually install Windows, as it says it's missing drivers. If I create an USB stick using the Media Creation Tool for the same edition that works nicely. So there must be something wrong with this method for Windows 10 Pro 64bit at least. – Florian Aug 06 '18 at 09:43
  • Did not work for me – cjohansson Sep 25 '19 at 10:06
  • The above technique did not work, but I found one that did. Using the above steps I hit an error when copying: "install.wim file too large" (my source iso is Windows 10 update 2004). There is a magical linux tool called "wimsplit" that corrected the file size problem. A full tutorial is shown here: https://gist.github.com/dragon788/26921410d8de054366188c5c5435ae01 – Vahid Pazirandeh Jun 22 '20 at 22:29
14

If you're using Ubuntu to burn Windows ISO to USB you could use WinUSB. Unetbootin won't work with Windows ISOs. It supports only Linux distros.

However, installing WinUSB on current Ubuntu versions is not an easy task. More than that WinUSB has older GRUB dependencies that may interfere with your bootloader setup, so you may end up with a non-bootable Ubuntu. Well that shouldn't be such a big problem if you were making a Windows USB to get rid of Ubuntu. But that is not guaranteed either.

Currently there are two methods for booting an operating system. EFI loading and MBR loading. Which one is suitable for you depends on the PC/motherboard capabilities. The method for creating a bootable USB for each of the above mentioned boot loading methods is described on How can I create a Windows bootable USB stick with Ubuntu?

WinUSB can only make MBR bootable USB drive.

Cornelius
  • 9,483
  • 4
  • 40
  • 62
9

You can use WinUSB for burning windows iso to pendrive.
Additional details and Ubuntu packages can be found here

Note:-You need minimum 4 GB pendrive for burning windows 7 iso

bitsbuffer
  • 1,287
  • 3
    WinUSB is outdated and has serveral issues, look at WoeUSB successor/fork – Frank N Apr 01 '18 at 12:26
  • That actually worked for me with Windows 7. The dd tool was not creating a valid boot system apparently. The WoeUSB does some magic to make the thumb drive bootable. (Idid not try the old WinUSB tool, just the newer version which is still active in 2018.) – Alexis Wilke Jul 10 '18 at 06:33
7

It's very simple... We will go step by step :using power iso:

  1. Download and install power iso.
  2. Open power iso.
  3. Click on tools and then create bootable USB drive.
  4. It may ask run as admin. then make it run as admin.
  5. Now browse source image file.
  6. Select destination USB drive and then click start.
  7. done. your bootable USB is ready for installing an operating system from bootable USB.

NOTE: pendrive must be of 4GB or more.

vijay dewani
  • 71
  • 1
  • 2
7

There's a tool called Multisystem which can make a USB drive bootable, and boot various OSes from it - amongst others, Windows XP, Vista and Seven are supported (the program's pages are in French only; the program itself is localized). I was able to boot the WinXP install ISO off a USB flash disk using this tool.

Note that the Windows CD is an install CD, not a usable "live" distribution.

6

From Windows, try using unetbootin and from a linux distro use this command in terminal (this worked for me, but you will lose the content of the flash drive, so make a copy):

sudo dd if=<ISO_FILE> of=/dev/sd<FLASH_DRIVE_ID>
  • 2
    Where <FLASH_DRIVE_ID> is a small letter like b, c, d, etc. but how do we know which one? – user68186 Apr 24 '14 at 17:43
  • 1
    it's for burning a Windows ISO . for some reasons when I Launch it to formate in Launch . I got black screen . not working – user3091970 Apr 24 '14 at 18:15
2

I know that question is a bit outdated, but for the sake of compleetness I add a link to a modern standard Ubuntu GUI application for burning iso on a flash drive: Disk Creator.

  • 6
    Works only with Linux ISO! – Cornelius Apr 25 '14 at 18:49
  • 1
    It seems that this freaking question is never becomes outdated. :-( Why Debian has no STANDARD package to write a Windows ISO?.. You never know how many viruses you can install trying different bootable USB writers. I did write the code. It's freaking simple. Why no one supply just a standard writer? – Brian Cannard Sep 06 '17 at 19:25
-4

Ubuntu can mount .iso files from nautilus in Natty.

Have you tried copying the contents of the .iso to the desired USB drive?

From there you should be able to tell your PC to boot from the USB with no problems.

If that Fails to work you can use UNetBootin in order to copy/burn the .iso to disk.

This blog post Describes how to do that.

nikomax
  • 147
  • 10
    Just copying the files over will definitely not work; bootloader code is also needed. -1 for misinformation. (Unetbootin should work with many bootable CDs, as it copies the files and makes the USB drive bootable; not sure about a Windows bootable CD) – Piskvor left the building Sep 07 '11 at 15:42
  • 3
    Piskvor's comment only applies to booting with BIOS. If you are using UEFI boot, copying over the files might actually work as long as the drive is a FAT32 partition with the boot flag set and the ISO contains the files necessary for UEFI boot. – Lars Nyström Apr 15 '15 at 08:29
  • I've always been really confused about this answer I made many years ago, as I was sure it works. I realised why it shouldn't however your answer makes sense as well I was doing a lot of installing via USB back in those days (100% before UEFI was in my life) and I was sure it had worked. Thanks for helping put this niggle to rest for me! +1 – nikomax Dec 18 '19 at 04:29