Live USB
A live USB is a portable USB-attached external data storage device containing a full operating system that can be booted from. The term is reminiscent of USB flash drives but may encompass an external hard disk drive or solid-state drive, though they may be referred to as "live HDD" and "live SSD" respectively. They are the evolutionary next step after live CDs, but with the added benefit of writable storage, allowing customizations to the booted operating system. Live USBs can be used in embedded systems for system administration, data recovery, or test driving, and can persistently save settings and install software packages on the USB device. 

Many operating systems including , , Windows XP Embedded and a large portion of Linux and BSD distributions can run from a USB flash drive, and Windows 8 Enterprise has a feature titled Windows To Go for a similar purpose.

Background
To repair a computer with booting issues, technicians often use lightweight operating systems on bootable media and a  command-line interface. The development of the first live CDs with graphical user interface made it feasible for non-technicians to repair malfunctioning computers. Most Live CDs are Linux-based, and in addition to repairing computers, these would occasionally be used in their own right as operating systems.

Personal computers introduced USB booting in the early 2000s, with the Macintosh computers introducing the functionality in 1999 beginning with the Power Mac G4 with AGP graphics and the slot-loading iMac G3 models. Intel-based Macs carried this functionality over with booting macOS from USB. Specialized USB-based booting was proposed by IBM in 2004 with Reincarnating PCs with Portable SoulPads and Boot Linux from a FireWire device.

Benefits and limitations 

Live USBs share many of the benefits and limitations of live CDs, and also incorporate their own.

Benefits 
 In contrast to live CDs, the data contained on the booting device can be changed and additional data stored on the same device. A user can carry their preferred operating system, applications, configuration, and personal files with them, making it easy to share a single system between multiple users.
 Live USBs provide the additional benefit of enhanced privacy because users can easily carry the USB device with them or store it in a secure location (e.g. a safe), reducing the opportunities for others to access their data. On the other hand, a USB device is easily lost or stolen, so data encryption and backup is even more important than with a typical desktop system.
 The absence of moving parts in USB flash devices allows true random access, thereby avoiding the rotational latency and seek time  of hard drives or optical media, meaning small programs will start faster from a USB flash drive than from a local hard disk or live CD. However, as USB devices typically achieve lower data transfer rates than internal hard drives, booting from older computers that lack support for USB 2.0 or newer can be very slow.

Limitations 
 LiveUSB OSes like Ubuntu Linux apply all filesystem writes to a casper filesystem overlay (casper-rw) that, once full or out of flash drive space, becomes unusable and the OS ceases to boot.
 USB controllers on add-in cards (e.g. ISA, PCI, and PCI-E) are almost never capable of being booted from, so systems that do not have native USB controllers in their chipset (e.g. such as older ones before USB) likely will be unable to boot from USB even when USB is enabled via such an add-in card.
 Some computers, particularly older ones, may not have a BIOS that supports USB booting. Many which do support USB booting may still be unable to boot the device in question. In these cases a computer can often be "redirected" to boot from a USB device through use of an initial bootable CD or floppy disk.
 Some Intel-based Macintosh computers have limitations when booting from USB devices – while the Extensible Firmware Interface (EFI) firmware can recognize and boot from USB drives, it can do this only in EFI mode. When the firmware switches to "legacy" BIOS mode, it no longer recognizes USB drives. Non-Macintosh systems, notably Windows and Linux, may not be typically booted in EFI mode and thus USB booting may be limited to supported hardware and software combinations that can easily be booted via EFI. However, programs like Mac Linux USB Loader can alleviate the difficulties of the task of booting a Linux-live USB on a Mac. This limitation could be fixed by either changing the Apple firmware to include a USB driver in BIOS mode, or changing the operating systems to remove the dependency on the BIOS.
 Due to the additional write cycles that occur on a full-blown installation, the life of the flash drive may be slightly reduced. This doesn't apply to systems particularly designed for live systems which keep all changes in RAM until the user logs off. A write-locked SD card (known as a Live SD, the solid-state counterpart to a live CD) in a USB flash card reader adapter is an effective way to avoid any duty cycles on the flash medium from writes and circumvent this problem. The SD card as a WORM device has an essentially unlimited life. An OS such as Linux can then run from the live USB/SD card and use conventional media for writing, such as magnetic disks, to preserve system changes; .

Setup 
Various applications exist to create live USBs; examples include Universal USB Installer, Rufus, Fedora Live USB Creator, and UNetbootin. There are also software applications available that can be used to create a Multiboot live USB; some examples include YUMI Multiboot Bootable USB Creator and Ventoy. A few Linux distributions and live CDs have ready-made scripts which perform the steps below automatically. In addition, on Knoppix and Ubuntu extra applications can be installed, and a persistent file system can be used to store changes. A base install ranges between as little as 16 MiB (Tiny Core Linux) to a large DVD-sized install (4 gigabytes).

To set up a live USB system for commodity PC hardware, the following steps must be taken:

 A USB flash drive needs to be connected to the system, and be detected by it
 One or more partitions may need to be created on the USB flash drive
 The "bootable" flag must be set on the primary partition on the USB flash drive
 An MBR must be written to the primary partition of the USB flash drive
 The partition must be formatted (most often in FAT32 format, but other file systems can be used too)
 A bootloader must be installed to the partition (most often using syslinux when installing a Linux system)
 A bootloader configuration file (if used) must be written
 The necessary files of the operating system and default applications must be copied to the USB flash drive
 Language and keyboard files (if used) must be written to the USB flash drive
 USB support in the BIOS’s boot menu (although there are ways to get around this; actual use of a CD or DVD can allow the user to choose if the medium can later be written to. Write Once Read Many discs allow certainty that the live system will be clean the next time it is rebooted.)

Knoppix live CDs have a utility that, on boot, allows users to declare their intent to write the operating system's file structures either temporarily, to a RAM disk, or permanently, on disk or flash media to preserve any added configurations and security updates. This can be easier than recreating the USB system but may be moot since many live USB tools are simple to use.

Full installation 
An alternative to a live solution is a traditional operating system installation with the elimination of swap partitions. This installation has the advantage of being efficient for the software, as a live installation would still contain software removed from the persistent file due to the operating system’s installer still being included with the media. However, a full installation is not without disadvantages; due to the additional write cycles that occur on a full installation, the life of the flash drive may be slightly reduced. To mitigate this, some live systems are designed to store changes in RAM until the user powers down the system, which then writes such changes. Another factor is if the speed of the storage device is poor; performance can be comparable to legacy computers even on machines with modern parts if the flash drive transfers such speeds. One way to solve this is to use a USB hard drive, as they generally give better performance than flash drives regardless of the connector.

Microsoft Windows 
Although many live USBs rely on booting an open-source operating system such as Linux, it is possible to create live USBs for Microsoft Windows by using Diskpart or WinToUSB.

See also 

 Boot disk
 dd (Unix)
 Disk cloning
 Extensible Firmware Interface
 External hard disk
 extlinux
 initramfs
 ISO file
 Lightweight Linux distribution
 List of live CDs
 List of tools to create Live USB systems
 List of Linux distributions that run from RAM

 Live USB creator
 Multiboot Specification
 Comparison of Linux Live CDs
 Partitionless
 Persistence (computer science)
 Portable Apps
 Portable-VirtualBox
 PXE
 Self-booting diskette
 UNetbootin
 Virtualization

References

External links 

 The Differences Between Persistent Live USB and Full Linux Install on USB
 Universal USB Installer
 Partitionless Installation
 Tutorial – How to Set your BIOS to boot from CD or USB
 HOW TO: Create a working Live USB
 Debian Live project
 How to create a Live USB in Ubuntu
 Casper

 
USB