Please correct me if I do not use the most appropriate terms here.
Within Linux/Ubuntu all devices are represented as files under the directory /dev
. In the first answer of the linked question umount
is used to detach certain device from the file-system in use, thus you can manipulate the entire device as pure file (/dev/sd?
) without limitations. Then the command dd
is used to copy the content of the input file image.iso
file as content of the output file /dev/sd?
.
Here I found a better explanation provided by Colin Ian King:
If you write data to the 'raw' block device while a filesystem on this
device is still mounted then the kernel will have problems when
updating the trashed file system. For example, the kernel will
periodically flush dirty data back to the mounted device, or may do
file lookups. If the underlying block device has been fundamentally
changed then the kernel will find issues this can lead too kernel OOPs
messages or even halt on BUG_ON() checks. So always unmount the
filesystem before changing the underlying data on the block device.
dd
is a copy program, similar to "burning a CD". the formating, file structure etc is copied from the image file used as input. – ravery Mar 25 '18 at 13:17