So, a situation may arise where you are required to install Windows where the only media you have is a USB drive. Now if you're already running Windows, you can do this with the media creation tool.
You can download a Windows 10 image direct from M$ here.
Obviously, we're running Linux ;) So download the ISO image and let's get cracking ;)
USB Prepare
You will need a drive >4Gb (I used a 2Gb :\)
Insert your USB and execute (where 'X' is the drive eg /dev/sda):
fdisk /dev/sdX
I'm assuming there are no partitions defined. So we'll start from scratch.
# fdisk /dev/sdj Welcome to fdisk (util-linux 2.30.2). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Command (m for help): p Disk /dev/sdj: 1.9 GiB, 2058354688 bytes, 4020224 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0x0003dd8d ------------------------------------------------------------------------------- Command (m for help): n Partition type p primary (0 primary, 0 extended, 4 free) e extended (container for logical partitions) Select (default p): p Partition number (1-4, default 1): First sector (2048-4020223, default 2048): Last sector, +sectors or +size{K,M,G,T,P} (2048-4020223, default 4020223): Created a new partition 1 of type 'Linux' and of size 1.9 GiB. ------------------------------------------------------------------------------- Command (m for help): t Selected partition 1 Hex code (type L to list all codes): 7 Changed type of partition 'Linux' to 'HPFS/NTFS/exFAT'. ------------------------------------------------------------------------------- Command (m for help): a Selected partition 1 The bootable flag on partition 1 is enabled now. ------------------------------------------------------------------------------- Command (m for help): p Disk /dev/sdj: 1.9 GiB, 2058354688 bytes, 4020224 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0x0003dd8d Device Boot Start End Sectors Size Id Type /dev/sdj1 * 2048 4020223 4018176 1.9G 7 HPFS/NTFS/exFAT ------------------------------------------------------------------------------- Command (m for help): w The partition table has been altered. Calling ioctl() to re-read partition table. Syncing disks.
Make sure you have sys-fs/ntfs3g installed.
Execute
mkntfs -Q /dev/sdj1
# mkntfs -Q /dev/sdj1 Cluster size has been automatically set to 4096 bytes. Creating NTFS volume structures. mkntfs completed successfully. Have a nice day.
Install boot sector
Make sure you have ms-sys installed.
Execute ms-sys -n /dev/sdj1
# ms-sys -n /dev/sdj1 NTFS Windows 7 boot record successfully written to /dev/sdj1
Now for the installation files.
Mount the downloaded ISO and the USB drive.
mount -o loop /$HOME/Downloads/Win10_1709_English_x64.iso /mnt/THIS mount /dev/sdj1 /mnt/THIS
Now copy the files.
cp -Rv /mnt/THIS/* /run/media///
And that's it. Unmount the ISO/USB and go install.