/bootiso

A bash program to securely create a bootable USB device from one image file.

Primary LanguageShellGNU General Public License v3.0GPL-3.0

License: GPLv3 Version Codacy grade

Create a USB bootable device from an image file easily and securely.

Because of its reliance on GNU and POSIX tools, bootiso primarly targets GNU/Linux systems.

Install

Package managers

This list might be out of date (please report). Check repology.org.

System family URL
Arch Linux (AUR) https://aur.archlinux.org/packages/bootiso/
Void Linux https://github.com/void-linux/void-packages/tree/master/srcpkgs/bootiso
openSUSE (OBS) https://build.opensuse.org/package/show/utilities/bootiso
OpenMandriva (ABF) https://abf.openmandriva.org/openmandriva/bootiso/build_lists

Manual install

Check Install Instructions document. Please also read the distro tweaks section.

Reference Manual

The official manual is available at jsamr.github.io/bootiso. The reference should also be available as a man page via man bootiso. If you are in a hurry, jump to the EXAMPLES section.

Highlights
SYNOPSIS
DESCRIPTION
INSTALL MODES
GUARDRAILS
EXIT STATUS
ENVIRONMENT
EXAMPLES
TROUBLESHOOTING

See it in action

Probing

--probe (shorten -p) gives you details about ISO boot capabilities and list available USB drives.

Using --assume-yes + --autoselect

--assume-yes (shorten -y) bypass prompting the user for overwritting USB device, and --autoselect (shorten -a) allow automatic selection of USB device when exactly one device is connected in combination with --assume-yes.

No-USB device failure

In the below example, the selected device with --device (shorten -d) flag is not connected through USB and bootiso fails.

Distros tweaks

  • On Fedora, set BOOTISO_SYSLINUX_LIB_ROOT environment to /usr/share/syslinux.
  • Take a look at the by-distribution dependency table to make sure you have all required dependencies installed.

Contributing

Read the Code Style and Conventions document.