Flash USB on a VM

I want to know how can i flash a ISO on my USB with Qubes. Want to make a Flash ISO with Arch Linux to dual boot Arch Linux (Development/Testing purposes) and Qubes for daily drive. I already tried to attach my USB to personal Qube and flashed the USB with Balena Etcher, but when i try to boot, it just gives me the GRUB loader.

If you attach your USB block device to a qube, you can do anything needed, including writing to it, so this is really not an issue. Now, regarding the booting from USB part, you may need to check the configuration of your BIOS/UEFI to see if USB booting is allowed and prioritized over the internal drive. For your purpose, USB booting should come first and internal drive second (even though it’s not the most secure configuration, of course).

1 Like

Yes, but the fact that i cannot boot the ISO (even with other distro like Debian) is strange. With other distro or even Windows i can use Balena Etcher and everything works fine. I will try again today with other ISO and other distro (im using Whonix Guest VM) and will se if this works.

That is weird. On linux, flashing an ISO is as easy as doing: dd if=/path/to/your/ISO/file.iso of=/dev/device_to_be_flashed. This works under any linux Qube and also on bare metal linux without problems. If the ISO file is compressed, you need to decompress it first, of course.


How did you attach the flash drive to the VM? There are two or more ways you can attach it, and I’ve no idea how Etcher deals with the weirder ones.

You can, with your sys-usb VM running, attach the entire flash drive to your AppVM as a USB device - though only some devices will give you this option. This should work fine.

Then, you can attach the entire block device (sdc, sdb, etc) to the VM - and I’d expect Etcher to find this a bit bizarre, because it’s not how a USB stick normally looks to the OS, but ‘dd’ should work fine to it.

If there are existing partions (sdc1, etc), you can also attach those to the AppVM - but this won’t work. You’re writing the image to the wrong thing.

One other thing: Be sure to run ‘sync’ and wait for it to compete before removing the stick, if you’ve used dd. It’s quite easy for dd to end up well ahead of actual progress writing to the stick with the filesystem cache, though ‘conv=fsync’ should keep dd a bit closer to actual write progress.


With the “devices” option located in taskbar.

Ah yes, i know it. I always run “sync” before removing my USB to be sure that all files already have been writed. But unfortunately, in this situation, this didn’t worked.