How to create a bootable Linux USB drive

soloojos (Lemmy)@feddit.cl to Linux@lemmy.ml – 183 points –
How to create a bootable Linux USB drive
zdnet.com
82

You are viewing a single comment

Isn't that just 'sudo cp image.iso /dev/sdX && sync' ?

Not technically. unetbootin and some similar tools like rufus take the USB, partition it, and copy the contents of the disk to it after manually setting up a bootloader on it. This is not required for most Linux ISOs though where you can just cp or dd the image directly to the USB as they are already setup with all that on the image. But other ISOs, like I believe Windows ones have a filesystem on them that is not vfat so cannot be directly copied. Although these days for windows you just need to format the USB as vfat and copy the contents of the windows ISO (aka the files inside it, not the iso filesystem) to the filesystem.

I tend to find unetbootin and rufus break more ISOs then they actually help with though. Personally I find ventoy is the better approach overall, just copy the ISO as a file to the USB filesystem (and you can copy multiple ones as well).

The only thing you would have achieved that was would be to copy an iso file onto your stick. EFI or Boot doesn't know how to do anything with it.

A lot of Linux ISOs are hybrid images which can be booted if flashed directly to a USB stick.

Op was just using cp to copy the iso onto the drive no flashing or anything...

The cp command will write the ISO file directly onto the device. This is the official way that is recommended by Debian:

cp debian.iso /dev/sdX

Source: https://www.debian.org/releases/stable/amd64/ch04s03.en.html

Woah...

Damn I'm sorry for questioning this method, I didn't know.

This works because block devices like /dev/sdX are just files. If you cp a file onto another file, it overwrites the data of the destination with the source. A block device represents the device itself, not the filesystem; if you wanted to put the ISO inside the filesystem, you'd have to mount it first.

Next time I'll test out another distro I'll try just that... Sadly I just hopped yesterday from Fedora 40 to LMDE.