Overview
Sticky911 is a simple script and XML based interface to easily and quickly
create bootable USB and CD/DVD images for booting one or more linux installations.
It uses isolinux
under the covers. The idea is to be able to boot quickly and reliably into a linux distribution for
which the boot sector is
no longer usable. Therefore, only a small subset of isolinux
functionality is exposed. Just get your linux kernel,
initrd image, root device name, and kernel options and you are ready to go.
The aim is first time right.
Advantages of this approach over direct isolinux use are:
- (Almost) guaranteed correct isolinux configuration file through rigorous XML validation and
runtime checks such as:
- Existence of vmlinuz and initrd files
- Various consistency checks of the input XML file based on XML schema
- Guaranteed correct isolinux config file syntax
- Easier maintenance of kernel and initrd files because the limitation of
8 characters is avoided (sticky911 generates short filenames automagically for you).
This means you can maintain your images in a user-friendly way.
Disadvantage is that only limited functionality of isolinux is exposed. This is
intentional. It is called sticky911 for a reason because you will typically use
this in emergency situations.
Usage
The steps in using it are as follows:
- Create an XML boot file: Create an XML file that defines:
- kernel/initrd pairs: Kernel/initrd pairs identified by a symbolic name.
This allows use of the same kernel/initrd pairs without copy/paste.
- entry definition: Define the meny entries by referring to the
kernel/initrd pair you want to use, the root directory, and other kernel options.
- default entry: The definition of the default entry to boot.
See for example my boot.xml file.
-
Create the image: makebootiso myboot.xml myboot.iso
- Deploy the image: Burn it onto a CD/DVD or simply copy it to a USB stick like:
dd if=myboot.iso of=/dev/sdd bs=10M (substitute your particular device name
for /dev/sdd).
Installation
Installation is simple. Just get the latest version from subversion using
svn export, copy the files to some location and then put the
bin directory of the distribution in your path or invoke the script using
the absolute path of the script.
Installation requirements are:
- isolinux
- xsltproc
- xmllint
- mkisofs
On OpenSuSE 11.3, this amounts to the following packages:
- syslinux
- cdrkit-cdrtools-compat
- libxml2
- libxslt
Download
There are no releases for this software. It is however used regularly and updated whenever
necessary. The subversion URL for read-only access is
https://wamblee.org/svn/public/sticky911/trunk
. You are free to use it but use it at your own risk.
Credits
A great thanks to the isolinux community.
I have used it before and it was already relatively easy but I could not resist the
temptation to make a simple XML based interface for isolinux to make rescue situations
a little less stressful.