LiveUSB

This article explains how to create a Gentoo LiveUSB or, in other words, how to emulate a or  Gentoo LiveCD using a USB drive. This is particularly useful for installing Gentoo on a modern laptop with no CD-ROM drive.

Although the instructions found in this document aim at emulating a Gentoo LiveCD using a USB drive, they should work for any arbitrary block device as long as the device names are adjusted accordingly.

Prerequisites
In order to use a Gentoo LiveUSB the following will be needed:


 * Bootable USB drive with at least 1GB (the bigger the better);
 * i686 or x86_64 computer with support for booting from USB

Access to the following is needed for creating a LiveUSB:


 * A computer running Gentoo (or alternatively another Linux distribution);
 * A computer running Microsoft Windows with the appropriate software (see the Windows section below)

Choosing an installation media for Gentoo
Good choices are:
 * the architecture appropriate Gentoo Minimal Installation CD
 * SystemRescueCd 5.3.2, which is Gentoo-based. Both 32-bit and 64-bit setups are supported by the same ISO. As of version 6.0.0, SystemRescueCd is based on Arch Linux and dropped 32-bit support (i.e. ), so in time this alternative might no longer be suitable.

With that being said, almost any modern LiveCD should work for installing Gentoo.

When downloading, adjust the architecture (,, , , etc.) portion of the URL to match the system's CPU. Gentoo mirrors are here.

Convert the ISO image to hybrid mode
Most modern LiveCD's, like Gentoo are already in hybrid mode. If the LiveUSB does not boot, then it may be that the image will have to be converted to hybrid mode. Hybrid mode means image will enable the ISO to boot from both a CD-ROM device or a USB drive.

Convert the ISO with the following command:

The command comes as part of the  package.

Use dd to write the ISO image to a USB drive
When using the latest install ISOs (installcds or livedvd), it is sufficient to directly copy the ISO contents on the USB device. The command can be used to accomplish this. For instance, assuming the USB device is at :

The utility will not return any progress output on standard output (it can provide some progress output, but not without some finagling). The command will exit without any errors (no output) when it completes the transfer successfully. Depending on the size of the ISO image and the speed of the USB device, this process could some time. Be patient!

Once complete, the USB drive should be bootable.

On Windows, the command is also available through various projects, such as GNUWin32 or Chrysocome.

The remainder of this document explains how to setup a vfat partition that is writable using the syslinux bootloader instead of isolinux.

Automatic drive-wide installation
The script will make an USB stick suitable for both BIOS and UEFI systems.

Partitioning the drive
Create a FAT16 partition on the USB drive and mark it bootable using. An example partitioning scheme can be seen below:

Creating the filesystem
Create a FAT16 filesystem on the USB drive using :

Installing a Master Boot Record (MBR)
Install the precompiled Master Boot Record (MBR) from on the USB drive:

Mounting the Gentoo Minimal Installation CD
Download a Gentoo Minimal Installation CD for the system's architecture from a the main site's download page and mount the ISO image on as shown below:

Adjust the  as necessary to the location of the downloaded Minimal Installation CD ISO.

Mounting the LiveUSB
Mount the newly formatted USB drive on as shown below:

Copying the files
Copy the files from the Minimal Installation CD to the LiveUSB. The files need to be reordered since will be used as the bootloader instead of :

Unmount the ISO image:

Adjusting the bootloader configuration
Adjust the syslinux configuration file using as shown below. The  parameter will introduce some extra delays before attempting to mount the filesystem. This is needed to allow the USB drive to settle upon detection.

Unmounting the drive
Make sure the USB drive has been unmounted before installing the bootloader:

Installing syslinux
Finally install the bootloader on the USB drive:

Rufus
Rufus is a free and open source project created to successfully image USB drives with a variety of operating systems. It tends to be faster than the Universal USB installer (see in the next section).

Rufus can be downloaded from the project's homepage.

Rufus is so easy to use that instructions for its use are not needed for this article. Seriously, go check it out! If questions do come up, check out Rufus' FAQ page.

Universal USB Installer
Universal USB installer is one of the oldest Linux-capable LiveUSB creators for Windows systems. It supports most Linux distributions, and has a simple, helpful wizard for selecting the Linux distribution. For Gentoo Minimal Installation CDs, however, select the which is at the very bottom of the list. Select the proper USB drive to format and extract Linux to, and click.

Universal USB installer can be downloaded from its homepage.

Booting
Insert the USB drive and turn on the computer, make sure the BIOS (or EFI firmware) has been set to boot from USB. If all goes well a standard syslinux prompt should appear on the screen.

When attempting to boot from a USB device, be sure to select or enable USB drives as bootable devices in the system's firmware interface. If the ISO is UEFI capable, it may be necessary to enable booting UEFI devices as well. This is typically performed via toggle options in the BIOS or UEFI firmware interface.

The boot order may need to be adjusted in the system's firmware for USB devices to boot first, although it is usually easier to hit the appropriate key (commonly either or ) and manually select the USB device as a one-time boot option from the list of bootable devices.

If installing Gentoo, follow the generic installation instructions found in the Gentoo Handbook appropriate to the system's architecture from here on!

External resources

 * Installing SystemRescueCd on a USB stick — The very popular alternative