Commands like
dd
are the best. Good ole greybeard-era spells with arcane syntax and the power to casually wipe out the whole universe (from their perspective ofc) if used haphazardly or not in respectful manner.What do you mean? Explicitly having to set
if=
andof=
is way harder to screw up than mixing up the order of arguments for e.g.cp
.
IMHO, it was a mistake to make USB block storage use the same line of names also used for local hard disks. Sure, the block device drivers for USB mass storage internally hook into the SCSI subsystem to provide block level access, and that’s why the drives are called sd[something], but why should I as an end user have to care about that? A USB drive is very much not the same thing for me as a SCSI harddisk. A NVMe drive on the other hand, kinda sorta is, at least from a practical purpose point of view, yet NVMe drives get a completely different naming scheme.
That aside, suggest you use lsblk before dd.
Always
lsblk
beforedd
. The order of /sdX might change from boot to boot. Only /nvme doesn’t change.Why is this?
It’s a design thing. BIOS can know NVMe disks’ location because they’re directly mounted to PCIe. SATA isn’t like this. Similar logic with the RAM slots.
–status=progress. So happy when they added this.