|
|
### Introduction
|
|
|
|
|
|
The easiest way to get new images into your Emulab is to import them from
|
|
|
Utah. In fact, when you setup your new Emulab, several standard images were
|
|
|
imported during the install process. If you log into the web interface,
|
|
|
click on the 'Experimentation' menu, and then click on 'List Images', you
|
|
|
will see a small set of images, which include recent versions of Ubuntu,
|
|
|
CentOS, and FreeBSD.
|
|
|
|
|
|
In general, these images should boot on most typical 64 bit x86 nodes. If
|
|
|
they do boot, most of the time it is simply missing drivers. If this turns
|
|
|
out to be a problem for you, it is a good idea to contact Utah via the
|
|
|
`emulab-admins` google group so we can help you out.
|
|
|
|
|
|
### Image Types
|
|
|
|
|
|
When we talk about images, we are referring to images created with Emulab's [Frisbee disk imaging system](http://www.cs.utah.edu/flux/papers/frisbee-usenix03-base.html). By (our) convention, these files end in *.ndz*. There are two basic types of images: _whole-disk_ and _partition_.
|
|
|
|
|
|
_Whole-disk images_ include an x86 DOS-style Master Boot Record (MBR) which includes a _partition table_ describing one or more partitions on the disk. Each partition has a type, offset and size. The type is used by the imaging system to determine what OS is in the partition.
|
|
|
|
|
|
_Partition images_ include the contents of a single DOS partition. The important thing to understand here is that a partition image cannot be properly restored to a disk unless the disk already has a valid MBR which defines the partitions.
|
|
|
|
|
|
### MBR layout
|
|
|
|
|
|
The current MBR layout (which we call Version 3), has one 18GB partition
|
|
|
and one 3GB partition for swap. You can download this MBR from the Utah
|
|
|
downloads directory at
|
|
|
[http://www.emulab.net/downloads/emulab-mbr3.dd](http://www.emulab.net/downloads/emulab-mbr3.dd)
|
|
|
|
|
|
### Images in the database
|
|
|
|
|
|
The Emulab database has a record for each image in the system. In addition
|
|
|
to the name of the image and its unique ID, it also contains info about
|
|
|
whether it is a whole-disk image or not, what MBR version, and what OS is
|
|
|
in each partition.
|
|
|
|
|
|
Once you have an initial set of images in the database, new images are
|
|
|
created through the web interface by customizing an existing image and
|
|
|
taking `snapshot` of disk after you have finished making your changes.
|
|
|
This is described below.
|
|
|
|
|
|
### Image Import
|
|
|
|
|
|
As mentioned above, you probably already have a set of images downloaded
|
|
|
during the installation process. More images and new versions of images
|
|
|
you already have are probably available from Utah. Contact Utah via the
|
|
|
emulab-admins google group to find out the URL(s) you need for the image
|
|
|
import process. Once you have that URL, you would do the following:
|
|
|
|
|
|
```
|
|
|
wap image_import -g URL_OF_IMAGE
|
|
|
```
|
|
|
|
|
|
A note about the URL; this points to an XML file that describes the image,
|
|
|
and inside the XML is another URL, for the .ndz file (bucket of bits). The
|
|
|
'-g' option says to go ahead and actually download the .ndz file. Once the
|
|
|
ndz file is downloaded, you will be able to view the details on the 'List
|
|
|
Images' web page.
|
|
|
|
|
|
* [Prev](install/Adding Nodes)
|
|
|
* [Next](install/Power Controllers)
|
|
|
* [Home](install/Installing Emulab) |