Spyke

Is there a USB drive flashing program in APT?

The only working PC I have is a 32-bit x86 and has a minimal Debian installation. I need to flash a USB with an ISO file from it to make a live system. I tried for a few days to get flathub or appimage working there, but just can't. I decided an apt package would be the easiest course of action, but neither Rufus, Impress or BalenaEtcher seem to be available in default repos. It there a program that is there? A bare .elf executable with no packaging would also be fine.

View original on lemmy.wtf

Other people have obviously pointed it out, but this is one of the many areas in Linux where the command line is so much easier than an interface that the people who write GUI tools just don't bother. The tool you need for a command line approach is called dd (I imagine it stands for direct data because that is what it does). Using dd you can take data from one place and put it into another. This means you can put zeros all over a drive, wiping it in full, using

dd if=/dev/zero of=/dev/targetdevice

That will fill the whole drive with zeroes, but you could also do it with random noise first, using the below

dd if=/dev/random of=/dev/targetdevice

In the case of your ISO image there is someone who has included all the options including block size and so on, but the step you really need is to be sure you get the right device. Execuse the command below

ls /dev

Then insert your device, wait a few seconds, and run it again. You will have a list of all of the devices that were connected before and after plugging your drive in, so your drive will be the new one. It will probably show up as something like

/dev/sdc
/dev/sdc1

Notice that there are two. The first is the device, the second is the partition on the device. If you tried to put the content of an ISO image into an existing partition it would look like it had all worked but it would actually fail because the ISO is a full rip of a device, not a partition. Instead use the device itself, in this case sdc.

dd if=/path/to/image.iso of=/dev/sdc bs=4M; sync

The last bit will make your system write things to the disk and make it safe to eject it. Once that is all done it should work as a bootable USB.

It seems super complex but once you have done it a few times it becomes so easy you will regret the time spent getting a GUI installed.

If you still want a GUI you could try Gnome Disks, but I never enjoyed using it.

7

Scrolled a while and didn't see it:

dd if=image.iso of=/dev/yourstick bs=4M ; sync

And what is yourstick? lsblk and determine by size. Use the device node, not a partition, e.g. /dev/sdb and not /dev/sdb1.

5
rmukreply
feddit.uk

+1 for Ventoy. For anyone who hasn't heard of it, the Ventoy utility sets up a USB key with a small bootable partition, then fills the rest with an exFAT partition where you can drop your ISOs. Booting from the stick just gives you a list of bootable images to choose from.

9

It's bloody magic. Super convenient, and tellingly the last iso I ever "burned" - now it's all simple file copy operations from any device. 😎👌

2
lemmy.ml

I always had to look up how to use the dd command until a few years back I saw somewhere that you can literally just use cp and the results won't be worse in any way.

cp image.iso /dev/sdX

35

This works. You can also cat image.iso >/dev/sdx

I always laugh at windows users with their external random apps to do something elementary

2
lemmy.world

You sure it wasn't cat?

I know you can use a root shell with cat image.ISO > /dev/[...] for disk images/ISO in disk image Format (so most ISO that aren't Windows) but using the cp command would be news for me.

10
lemmy.zip

Hmm, cp has smart block size handling & co (unlike dd) but cat is just a stream and pipe & redirect also buffer. Advantage of cp is, you can just sudo it.

6

I am 100% certain, I've done this many times over the past few years.

6
iopqreply
lemmy.world

Oops hit the wrong key, main drive formatted

16
thehatfoxreply
lemmy.world

It’s called “disk destroyer” for a reason.

Always double check your dd commands folks.

20
Annareply
lemmy.ml

Nah... If you use of=/dev/sda it won't touch your main drive \s

0

It freaks me out, but these days with nvme disks this is actually true

5

Thanks, seems it worked. It should be noted that /dev/ over normal /run/media/ path can be found with lsblk command, out of 2 with identical letter use latter with digit

10

mkusb is a simple bash script around dd to make things easier. I always have it installed on my laptop, in my ~/bin/.

3

The ones that come to my mind that you can install from APT are:

  • gnome-disk-utility
  • isoimagewriter
9

As others have said, dd will work, or if you really want, you can download the x86 Linux AppImage file from Balena's website, extract it, then just run it (you may need to mark it as executable first). Should work just fine, and it'll give you the same GUI as always

8

you should be able to create bootable flash drives with dd

6

yup. works very well. been using it whenever an image fails to boot properly on my multiboot usb..

1

You reached the end