1.2 Images Overview

Novell Linux Point of Service is designed to automate the roll-out of Point of Service terminals as much as possible. To assist this automation, the product makes extensive use of image building technology. For each type of terminal, whether it is a non-graphical system or a full desktop environment, you can create customized images to be downloaded automatically from the Branch Server when the terminal boots.

1.2.1 Types of Images

To help get you started, Novell Linux Point of Service comes with a set of pre-built image files that you can customize to set up your own system. Every Point of Service terminal requires two images: a boot image and a client image.

Two customizable boot image templates provide the minimum your Point of Service terminals need to initially start up either from a bootable CD or from the network via standard Preboot Execution Environment (PXE) remote boot technology:

  • CDBoot includes all the files and directories required to boot diskless and preinstalled diskful systems from CD.

    Novell Linux Point of Service includes a binary version of the CDBoot image. This image must be combined with a client image and a config.image configuration file to create a CD that can be used to boot the Point of Service terminal.

  • DiskNetBoot includes all the files and directories (including partitioning and boot loader installation) required to boot diskful and diskless terminals from the network.

    Novell Linux Point of Service includes binary versions of the first and second stage boot images used to PXE boot Point of Service terminals. The first stage image is a bootstrap image called initrd because it initializes a RAM disk in the terminal’s memory and performs the PXE boot. The second stage image is called linux because it loads the Linux kernel into the RAM disk so that the terminal can become network-capable, contact the Branch Server, and begin downloading the appropriate client image via the Trivial File Transfer Protocol (TFTP).

Four customizable client image templates are specially designed for the most common types of retail Point of Service terminals:

  • The Minimal image contains only the runtime environment for native-code applications (C and C++) and the ncurses library for non-graphical user interface support. The Minimal image supports only console-based applications. Its maximum size is 35 MB compressed, and 64 MB of RAM is required to boot the image.
  • The Java image includes the features of the Minimal operating system image and adds essential graphical interface capabilities as well as the ability to run Java programs. The Java image supports console-based C/C++ applications, Java programs in a Java2 runtime environment, and X11 applications. Its maximum size is 100 MB compressed, and 128 MB of RAM is required to boot the image.
  • The Browser image includes the features of the Java operating system image and essential graphical interface capabilities, and adds the Mozilla* Web browser. The Browser image supports console-based C/C++ applications, Java programs in a Java2 runtime environment, X11 applications, and basic browser-based applications. Its maximum size is 150 MB compressed, and although it is intended to be loaded on diskful systems with 256 MB of RAM, you can load it on a diskless system that has adequate memory (at least 1 GB of RAM is recommended).
  • The Desktop image is for high-functionality clients with full graphical user interface capabilities for a traditional desktop experience. It includes the Mozilla Web browser with plug-ins, and a full graphical desktop environment (GNOME 2.6 or KDE 3.2). The Desktop image supports console-based C/C++ applications, Java programs in a Java2 runtime environment, X11 applications, browser-based applications, and GNOME*-based or KDE*-based programs. It is intended to be loaded on diskful systems, but you can load it on a diskless system that has adequate memory (at least 1 GB of RAM is recommended).

In general, most Point of Service client images are created using the Novell Linux Desktop (NLD) 9 distribution. NLD is a general-purpose desktop platform that can be tailored for use in information kiosks, call-center terminals, or single-use PC workstations. However, because NLD shares a system core with SUSE Linux Enterprise Server (SLES) 9, you can build images using either NLD or SLES as the base. The only Point of Service images that require the SLES distribution are POSBranch images.

You can extend Point of Service client images to include add-on features such as:

  • Advanced Linux Sound Architecture (ALSA) library for audio support
  • EvTouch touchscreen driver
  • GNOME or KDE desktop environments
  • IBM* Java technology support
  • Firefox and other Web browsers
  • Samba 3 Client for SMB/CIFS connectivity to Microsoft* Windows* servers
  • VNC 4 Remote Control Client to allow other computers to remotely control the terminal

Client images that you create are initially stored on the Administration Server. Before you deploy your Point of Service terminals, you run a script to transmit the client images via the RSYNC service to specific directories on the Branch Server where, in turn, they can be downloaded to Point of Service terminals at boot time.

When a Point of Service terminal is started for the first time, it performs a PXE boot (or boots from CD) and then registers with the Branch Server to obtain the information it needs to download its client image. The TFTP service on the Branch Server automatically delivers the matching client image to the Point of Service terminal.

To make this work as designed, you must create reference objects in the LDAP directory for the types of Point of Service terminals you intend to deploy in your system. Taking the time to correctly create and configure these objects when you install the Branch Servers saves you from separately managing the startup of each Point of Service terminal.

1.2.2 About ImageBuilder

ImageBuilder is a Perl-based tool that provides a command line interface for creating images. It is installed when you select the NLPOS Image Server software selection during the Administration Server installation.

When you build a client image, ImageBuilder compiles all the information required to run a Point of Service terminal—the Linux operating system, drivers, configuration settings, application files, and so forth—into a single image file. This file can then be electronically distributed to Point of Service terminals over the network, or you can generate an ISO version of the image file that can be burned to a CD for manual distribution.

ImageBuilder comes in two versions: standard (scr) and XML-based (xscr).

scr

scr builds images using an Image Description Tree and an AdminServer.conf file. The Image Description Tree is a specific file system directory structure that defines the version information, component list, scripts, configuration files, and other components required to build client images.

The AdminServer.conf file defines the paths to the distribution directories where you have copied the Novell Linux Point of Service source CDs.

NOTE:scr generates client images with the Novell Linux Desktop distribution only.

xscr

xscr builds images using an Image Description Tree and two XML documents: an Image Specification Document (ImageSpecification.xml) and a Distribution Source Document (Distribution.xml). These documents contain XML elements that define the version information, component list, configuration files, and other components required to build client images.

The Image Description Tree contains one parent Image Specification Document at its root. This allows you to define global settings that affect the implementation of image subcomponents.

Image Specification Document templates for the CDBoot, DiskNetboot, Minimal, Java, Browser, Desktop, and POSBranch images specify the RPMs and drivers required to build their respective images and are included as child documents in their parent Image Specification Document at the root of the Image Description Tree. Child Image Specification Document templates for the client image add-on options such as GNOME, KDE, Samba 3 Client, and VNC 4 Remote Control Client are also included.

The Distribution Source Document (Distribution.xml) defines the paths to the distribution directories where you have copied the Novell Linux Point of Service source CDs.

NOTE:xscr can generate client images with either NLD or SLES distributions.

The XML-based Image Specification Document and Distribution Source Document provide significant advantages in image design and manageability:

  • You can manage image subcomponents as discrete elements. Drivers, RPMs, and even features can be separately managed within the Image Specification Document. This allows you to easily add features, RPMs, and drivers to an image.
  • You can define global settings in the parent Image Specification Document to customize the implementation of image subcomponents. For example, in the parent document, you can choose to include or exclude specific drivers or RPMs.

This granular level of control is made possible by the structure of the Novell Linux Point of Service XML schema, which organizes the template components in discrete elements so they can be individually managed.