Windows 7 is a wonderful OS.. and that is true inspite of my loyalty to Ubuntu (which has not been entirely generous lately).
I need Windows atleast to play my Steam games, for which I have a lot less time these days because of entrepreneurship and all that.
Anyway, this post is inspired by another guy who figured out how to do it. This guide assumes you are starting from Linux - this is reasonably guaranteed to work. The only case where it might not work is if Gparted was unable to set boot flags on your particular brand of USB drive.
You need to install GParted on your machine, download and compile ms-sys. At this point, plug in your USB disk and launch Gparted (using ’sudo gparted’) to check which partition it is mounted in. You could also type ’mounts’ on your command line to see this information. In my case, it was mounted at /dev/sdb1. Format it as NTFS and set the boot flag to 1.
Now mount your win7 installation ISO - using ‘sudo mount -o loop win7.iso /mnt/iso’ (I assume you have created a directory called /mnt/iso beforehand) and copy ALL the files in the ISO to your USB drive.
Compile ms-sys , unmount the USB drive (using sudo umount /dev/sdb1) and execute
sudo ms-sys -7 /dev/sdX