You can use dd
.
sudo umount /dev/sd<?><?>
where <?><?>
is a letter followed by a number, look it up by running lsblk
.
It will look something like
sdb 8:16 1 14.9G 0 disk
├─sdb1 8:17 1 1.6G 0 part /media/username/usb volume name
└─sdb2 8:18 1 2.4M 0 part
I would dismount sdb1.
Then, next (this is a destructive command and wipes the entire USB drive with the contents of the iso, so be careful):
sudo dd bs=4M if=path/to/input.iso of=/dev/sd<?> conv=fdatasync status=progress
where input.iso
is the input file, and /dev/sd<?>
is the USB device you're writing to (run lsblk
to see all drives to find out what <?>
is for your USB).
This method is fast and has never failed me.
EDIT: for those on a Mac ending up here, use lowercase for bs=4m
:
sudo dd if=inputfile.img of=/dev/disk<?> bs=4m && sync
EDIT: If USB drive does not boot (this happened to me), it is because the target is a particular partition on the drive instead of the drive. So the target needs to be /dev/sdc
and not /dev/sdc
<?>
For me it was /dev/sdb
.
Reference: https://superuser.com/a/407327 and https://askubuntu.com/a/579615/669976