I have an iso image (it's a windows installation disk), but I do not want to burn dvd. I want to create a bootable usb flash drive instead. And I want to use linux tools to accomplish this task.
I have found several recipes, they suggest using dd tool as follows:
dd if=/path/to/my.iso of=/dev/sdx
(f.e. here https://www.linux.com/blog/how-burn-iso-usb-drive)
Another recipe suggest to create some partitions on usb first (f.e. Terminal: create bootable USB from iso ) and this looks very strange to me.
As I understand the flash drive is just a storage. It's just a hardware which stores/returns a block of data given the index of this block. Is it correct?
Linux provides access to this storage via /dev/sdx device (where x may be any letter, in my case device name is /dev/sdb). I can get access to any bit of data on usb stick via this device. Is this correct?
The dd command just reads the contents of file bit by bit (well, block by block) and writes the data to specified device. If the input file is large enough every single bit of data on the usb stick will be overwritten. No information about partitions, filesystem's types, etc. would survive. Is this correct? If yes, what's use to partition/format usb stick before dd command?
The result of dd command is not what I expected. After it's complete I can see the files on the usb stick from my linux machine, but the stick is not bootable and my windows can't read it at all (it suggest to format the usb drive).
I'll use some tool to create the bootable usb stick (rufus or yumi or whatever else), it's not a problem now. The problem is that I do not understand why can't I use dd for this purpose.
May be the above-mentioned recipes work not for all iso images? Please help me to understand what's going on.