Why use dd instead of cp to create bootable disk?

One difference is efficiency, and thus speed. For example, you could get the bytes one by one and copy them to the device, with cat:

cat archlinux.iso > /dev/sdx

In theory cat will move each byte independently. That is a slow process, although in practice there will be buffers involved.

With dd and a good block size (usually related to the physical block size) it will be faster.

With cp it depends on the buffer size used by cp (not under your control) and other buffers on the way. Theoretically the efficiency lies between cat and dd.

An analogy: it is like pouring the contents of a glass into another glass.

cat will do it one drop at a time.

dd will use a spoon, and you define how big the spoon is (system limits apply)

cp will use its own spoon, and you don't know how big it is.

Tags:

Cp

Iso

Dd