Skip Navigation Links | |
Exit Print View | |
Creating a Custom Oracle Solaris 11 Installation Image Oracle Solaris 11 Information Library |
1. Introduction to Creating a Custom Installation Image
The distribution constructor is a command-line tool for building preconfigured Oracle Solaris images. The tool takes an XML manifest file as input and builds an image that is based on the parameters specified in the manifest file.
The distribution constructor can build an ISO image, which is an archive file, also known as a disc image, of an optical disc in a format defined by the International Organization for Standardization (ISO). You can also create a USB image based on a generated ISO image. Unlike ISO images, however, a USB image can only be created and used on x86 systems.
Note the following:
Depending on the image configuration, ISO or USB images can be bootable.
Both ISO images and USB images can be installed on a system or run in a live media environment.
An ISO image can be burned to a CD or DVD.
A USB image can be copied to a flash drive.
Both ISO images and USB images can be posted on the Internet.
The distribution constructor creates a USB image that could work in various types of flash memory devices, if those devices have driver support provided by the Oracle Solaris release. The usbcopy utility must be used to copy the USB image into a USB flash drive. This usbcopy utility is available in the distribution-constructor package.
You can use the distribution constructor to create the following types of Oracle Solaris images.
Oracle Solaris x86 LiveCD – You can create an x86 ISO image that is comparable to the LiveCD image that's distributed as an Oracle Solaris release. You can also modify the content of this ISO image by adding or removing packages. You can revise the default settings for the resulting booted environment to create a custom ISO image or USB image.
Note - Depending on the size of the packages included in the LiveCD image, the LiveCD image might instead be a LiveDVD image.
For more information about LiveCD installations, see Chapter 3, Using the LiveCD, in Installing Oracle Solaris 11 Systems.
Oracle Solaris x86 or SPARC Text Installation Image – You can create a SPARC or x86 ISO image that can be used to perform a text installation of the Oracle Solaris operating system. The text installer can be used on systems that do not need graphics cards.
Note - A text installation does not install all of the software packages that are included when installing from the LiveCD. For example, the text installer does not install a desktop. After a text installation, you can add additional packages, such as the solaris-desktop package.
For more information about text installations, see Chapter 4, Using the Text Installer, in Installing Oracle Solaris 11 Systems.
x86 or SPARC ISO Image for Automated Installations – The Oracle Solaris release includes the automated installer tool. The automated installer (AI) is used to automate the installation of the Oracle Solaris OS on one or more SPARC and x86 systems over a network. The installations can differ in architecture, packages installed, disk capacity, and other parameters. The automated installer uses a SPARC or x86 AI ISO image to install the Oracle Solaris OS to client systems. You can use the distribution constructor to create a SPARC AI ISO image that can be used to install the Oracle Solaris OS on SPARC clients, or to create an x86 AI ISO image that can be used to install the Oracle Solaris OS on x86 clients.
For information about using the automated installer, see Part III, Installing Using an Install Server, in Installing Oracle Solaris 11 Systems.
The distribution constructor creates images based on settings specified in XML files, called manifest files. The manifest files contain specifications for the contents and parameters of the ISO images that you create using the distribution constructor. The distribution constructor contains sample manifests that can be used to create a custom LiveCD, an x86 or SPARC AI ISO image, or an x86 or SPARC text installation image.
All the fields in each manifest file provide preset, default values that will create the type of image you need. You can edit fields in the manifest file to further customize the resulting image. For example, you can edit the target element in the manifest to specify a different location for the build area where the image can be constructed. In addition, you can check the publisher that's specified and ensure that the system you are using can contact that publisher to download the packages needed to build the image. If necessary, you can edit the software name element to specify a different publisher and repository location. For instructions, see Customizing Images.
You can also create custom scripts to modify your installation image. Then, you can add checkpoints to the manifest file to run these custom scripts. For further information, see Creating and Using Custom Scripts.
The distribution constructor package also includes a command-line utility, the distro_const command that interprets the manifest specifications and builds the image. After you have finished editing the image blueprint in a manifest file to suit your requirements, you run the distro_const command to build your image. For further information, see Chapter 3, Building an Image.
You can use the options provided in the distro_const command to stop and restart the build process at various stages in the image-generation process, in order to check and debug the image that is being built. This process of stopping and restarting during the build process is called checkpointing. Checkpointing is optional. Default checkpoints are specified in each manifest file. For instructions, see How to Build an Image in Stages, or see the distro_const(1M) man page.
The root archive for x86 images differs from the root archive for SPARC images. The whole root archive, or boot_archive, for x86 images is a UFS file system, compressed by using lzma. The SPARC platform does not support the compression of the whole root archive in this way. Instead, SPARC root archives use DCFS, which compresses each file individually. These individually compressed files might require specific handling in the manifest. For instructions, see the <boot_archive_contents> field in the dc_manifest(4) man page.