Write bootable BIOS update .ISO to USB stick

I found what may be a solution to the issue at http://positon.org/lenovo-thinkpad-bios-update-with-linux-and-usb.

First convert the iso image to an img file:

sudo apt-get install genisoimage
geteltorito -o bios.img gruj09us.iso

Then copy to the USB key:

sudo fdisk -l /dev/sdb  # double check that the device is right
sudo dd if=bios.img of=/dev/sdb #Will Erase the drive!! 

That said I think you should just try first whether it boots okay if you just write the .iso with a generic tool as you normally would. (Provided it needs some input and does not automatically start mucking about in your BIOS as you boot up.) Last two times I installed a Linux I didn't use the recommended tool. (I made a bootable USB for 15.04 with SUSE Studio Image Writer since Unetbootin messed it straight up multiple times.It worked fine.)


As Arch user said in the comments, the most straightforward way to write a bootable ISO to an USB drive is to dd the image to the drive.

First triple-check to which block device your USB drive is currently mapped to:

lsblk

Than dd the image to the USB drive. For example if your USB drive happens to be mapped to /dev/sdb:

sudo dd if=/path/to/image of=/dev/sdb bs=8M && sync

Different block sizes usually peform differently, however usually a bigger block size performs better than a smaller block size; a block size of 8M should be enough to let the process run at full speed.

If you want to monitor the progress of the process, install pv:

sudo apt-get update && sudo apt-get install pv

And run this command instead:

pv /path/to/image | sudo dd of=/dev/sdb bs=8M && sync