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.
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:
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.
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:
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:
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.
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 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 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:
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.