Live USB
A live USB is a USB flash drive or a USB external hard disk drive containing a full operating system which can be booted. Live USBs are closely related to live CDs, but sometimes have the ability to save settings and permanently install software packages back onto the USB device. Like live CDs, live USBs can be used in embedded systems for system administration, data recovery, or the testing of operating system distributions without committing to a permanent installation on the local hard disk drive. Many operating systems including Mac OS 9, Mac OS X, Microsoft Windows XP Embedded and many of the Linux distributions and BSDs can also be used from a USB flash drive.
Contents |
[edit] History
Since 1999, Apple Macintosh computers (beginning with the Power Mac G4 with AGP graphics and the slot-loading iMac G3 models)[1] have been able to boot from USB. Intel-based Macs support booting Mac OS X from USB.
Specialized USB-based booting was proposed by IBM in 2004, in the papers "Reincarnating PCs with Portable SoulPads" (PDF & Summary) and Boot Linux from a FireWire device.[2]
[edit] Benefits and limitations
Live USBs share many of the benefits and limitations of live CDs.
[edit] 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 the user 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 for faster seek time than is possible with 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 a computer lacking USB 2.0 support can be very slow.
[edit] Limitations
- 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.[3]
- 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 only do this in EFI mode. When the firmware switches to "legacy" BIOS mode, it no longer recognizes USB drives. Many operating systems can only be booted in BIOS mode, or are more easily booted or perform better when booted in BIOS mode, notably Windows and Linux,[4] and thus USB booting on Intel-based Macs is largely limited to Mac OS X, which can easily be booted via EFI. 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.[5]
[edit] Principle of installation
Various applications exist to create live USBs; examples include the Fedora Live USB Creator and UNetbootin, which works with a variety of distributions. A few Linux distribution and live CDs have ready-made scripts which perform the steps below automatically. In addition on some, extra applications can be installed, and a persistent file system can be used to store changes.
To set up a live USB system for commodity PC hardware, the following steps need to be done:
- 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
- A 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 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
[edit] Types of live USB
[edit] Live CD derived
The first type of live USB is created by simply taking the ISO image file from a live CD distribution and placing it on USB storage device and then making it bootable.
Running from a CD allows the use of a completely different computing system on an existing systerm, and allows running without any storage device. (RAM is still required). Like a CD, it requires no installation. Depending on the methods used to put the system onto USB, the USB may or may not be easily written to. No requirement exists for compression since USB devices are far larger than any optical storage medium. A system as small as 1 M can be used (e.g. Tom's Root Boot).
(Actual use of a CD or DVD will 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 re-booted.) Use of a liveCD was an idea proposed by students participating in the annual Red/Blue competition sponsored by the US National Security Agency.
Knoppix liveCDs have a utility that, on boot, will allow a user to declare their intent to write to either a temporary (USB, say) or permanent (existing hard drive, say) which enables them to save their configuration along with any security updates they might have added. This can be easier than re-creating the USB system.
[edit] Full install
The second type of live USB is closely related to a traditional operating system hard drive install with minor modifications like the elimination of swap partitions and files.
| Advantages | Disadvantages |
|---|---|
|
|
[edit] Examples
- BeleniX: Customized OpenSolaris installs including live CD and live USB.[6]
- Fedora (with Fedora Live USB creator)
- Gentoo Gentoo USB Live.
- Haiku: the Installer tool installs the operating system onto a hard disk or a USB Live indifferently.
- OpenBSD[7]
- OpenSolaris: The Distribution Constructor project has tools allowing users to build an install image.
- OS-9 RTOS: The standard OS-9 Configuration Wizard for X86 creates bootable USB sticks. OS-9 5.0 for X86 will support the creation of bootable CDs.
- OSx86: some "hacked" Mac OS X images can be written to a USB flash drive and turn it into a bootable Mac OS X system
- Puredyne: live CD/DVD/USB distribution for media artists and designers
- PCLinuxOS: Version 2009.1 comes with a live USB creator tool, version 2008 "MiniMe" can be installed manually[8]
- Puppy Linux Designed for easy install on USB.[9]
- Sugar: Sugar on a Stick is a LiveUSB for children and learning.
- Super OS: usb-creator and cd2usb already included on the DVD
- Ubuntu (can be installed directly to a flash drive or USB external hard drive manually by using tools like usb-creator, UNetbootin, or cd2usb)
- Windows Preinstallation Environment: Freely available version of a live Windows installation, command-line only.
[edit] Comparison
| Distribution | Alternatives to live Cd creation | File saving | Application saving | Boot methods |
|---|---|---|---|---|
| Fedora 9 | Netinstaller (downloads iso & makes Usb), UNetbootin | in folder | none | |
| Gobolinux | Zip + sh&bat scripts | N/A | N/A | 2ram (gobolinux toram) |
| sidux | USB installer GUI | in folder, on USB stick | auto | normal |
| Slax | Zip + sh&bat scripts, UNetbootin | N/A | N/A | |
| SliTaz | none & from internal drive($tazusb) | in hacker folder | through script (Tazusb) | 2ram - lowram |
| (K,X)ubuntu | UNetbootin | auto | auto | |
| Wolvix | none (Control Panel) | auto after making permanent space (Control panel) | auto | AllUsb - 2Ram |
Syslinux is a program that makes a USB storage device bootable (they are often used after extracting files to the formatted media).
[edit] See also
- Extensible Firmware Interface
- extlinux
- Live CD
- Comparison of Linux Live CDs
- Disk cloning
- List of live CDs
- Persistence (computer science)
- List of tools to create Live USB systems
- Boot disk
[edit] References
- ^ http://support.apple.com/kb/TA25908 Legacy Apple article about USB features in Macs with AGP graphics
- ^ http://news.cnet.com/IBM-brains-capture-a-PCs-soul/2100-1041_3-5830870.html
- ^ http://www.pendrivelinux.com/2007/11/21/use-a-floppy-to-boot-usb-pendrive-linux/ boot floppy for live USB
- ^ Linux and X.org rely on BIOS mode to initialize the video hardware, and hence under EFI-booting, Linux and X do not have hardware accelerated video.
- ^ http://forums.linuxmint.com/viewtopic.php?f=46&t=16243#p141498
- ^ OpenSolaris Developer Preview on USB flash drives
- ^ OpenBSD FAQ Section 14.17.3
- ^ http://www.pendrivelinux.com/usb-minime-2008-install-from-windows/
- ^ Install guide for Puppy Linux and other distros
|
||||||||||||||||||||||||||||||||||||||||