How to write bootable Windows .iso image on USB key with Linux

WinUSB is a simple tool to create a Windows USB install stick from Linux distros in a simple way. The application supports Windows 8 and 10 and can use either an ISO or a DVD as a source.

Install WinUSB on Linux and create a USB stick Windows installer

WinUSB package is available on the official webpage at http://en.congelli.eu/prog_info_winusb.html and it’s already packed for the main Linux distros.

For Arch:

https://aur.archlinux.org/packages/winusb/

For Fedora/OpenSUSE:

Download package from here and double click on file.

For Ubuntu:


$ sudo add-apt-repository ppa:colingille/freshlight
$ sudo apt-get update
$ sudo apt-get install winusb

This package contains two programs: WinUSB-gui, a graphical interface which is very easy to use, and winusb, the command line tool. The gui version is dummies-proof, just select the .iso source and the destination drive, finally press ‘install’. Easy.

The command line version is a cli tool, so winusb –help give you all the infos.

Sometimes, the program gives errors. Something like: ‘Installation failed! Exit code: 32512 Log:’ or with 3512 issue number.

In that case, the solution is to format the USB with through fav distro tool with FAT filesystem (not NTFS or ext!) and to use the cli WinUSB tool in a way like this:


$ sudo ln -s /usr/sbin/grub2-install /usr/sbin/grub-install #tweak for Fedora systems
$ sudo winusb -v --install Win10_x64.iso /dev/sdb

Like you see above, in Fedora you must do one more step, only make a symbolic link, in order to complete the install process in the right way. And don’t forget that you need the grub2-efi-modules to grub2-install on EFI, so, just in case:


$ sudo dnf install grub2-efi-modules

 

Alternatives. The mantained fork WoeUSB and the dd command

If you have another issues with WinUSB, you could use WoeUSB, a simple tool that enable you to create your own usb stick windows installer from an .iso image or a real DVD. It is a mantained fork of WinUSB.

Last, but not least, you can use the never ending command dd.


$ sudo dd if=Win10_x64.iso of=/dev/sdb bs=4M; sync

Obviously, remember to put your path to Win .iso image instead of Win10_x64.iso and to replace sdb with the drive you are using.

  • Ella Minnow Pea

    Actually, the best alternative is mount the iso, and copy all the contents to the usb. It just works if the partition table is correctly set.

    • I did it, but not worked on EFI pc. Now, I’m thinking that I didn’t try to setting ‘legacy’ in BIOS. It’s a trial to test.