3.5 Point of Service Configuration Files

Each Point of Service terminal has its own configuration file that it loads at boot time. This configuration file determines which hardware drivers and images are loaded on the Point of Service terminal. The following sections review the configuration files for a Point of Service terminal booted from the network, from CD, and the configuration file used to register new Point of Service terminals.

3.5.1 The config.MAC_address File

The config.MAC_address files contain the parameters required to configure a specific Point of Service terminal during a network PXE or hard disk boot. Each Point of Service terminal has its own config.MAC_address file on the Branch Server.

When the Branch Server connects to the Administration Server, it logs into the LDAP directory, accesses the configuration parameters for its registered Point of Service terminals, and stores the information locally as ASCII configuration files (config.MAC_address) in the /tftpboot/CR directory. At boot time, each Point of Service terminal connects to the Branch Server over TFTP and loads its associated config.MAC_address file.

There is no need to manually create the Point of Service configuration files. When a new Point of Service terminal comes online, its configuration file is automatically created from LDAP entries on the Administration Server.

For more information on this process, see Section 3.5.3, The hwtype.MAC_address File and Section A.2, Core Script Process.

To modify a Point of Service configuration file, you must modify the Point of Service terminal’s entries in LDAP and then run the posAdmin --updateconfig command.

For more information, see Section 6.9, Updating config.MAC_address and Hardware Configuration Files.

The format of the config.MAC_address file is as follows:

IMAGE=device;image;version;srv_ip;bsize;compressed,...,
SYNC=syncfilename;srv_ip;bsize
CONF=source;dest;srv_ip;bsize,...,source;dest;srv_ip;bsize
PART=size;id;Mount,...,size;id;Mount
JOURNAL=ext3
DISK=device

Table 3-1 provides a detailed description of each parameter in config.MAC_address and its variables.

Table 3-1 config.MAC_address configuration file parameters

Parameter

Variable

Description

IMAGE=

 

Specifies which image (image) should be loaded with which version (version) and to which storage device (device) it should be linked.

Multiple image downloads are possible, but the first listed image must be the main client image. If the hard drive is used, a corresponding partitioning must be performed.

 

device

The storage device to which the image is linked; for example, /dev/ram1 or /dev/hda2.

RAM devices should not be confused with hard disk devices which use a partition table. On a Point of Service terminal, partition hda1 is used for the Linux swap partition and hda2 defines the root file system ( / ). On the RAM disk device, /dev/ram0 is used for the initial RAM disk and cannot be used as storage device for the client image. It is recommended that you use /dev/ram1 for the RAM disk.

 

image

The name of the image to load on the Point of Service terminal.

 

version

The version of the image to load on the Point of Service terminal.

 

srv_ip

The server IP address for the TFTP download.

This variable must always be included in the IMAGE= parameter.

 

bsize

The block size for the TFTP download. If the block size is too small according to the maximum number of data packages (32768), linuxrc automatically calculates a new block size for the download.

This variable must always be included in the IMAGE= parameter.

 

compressed

Specifies a compressed image boot. If the compressed variable is not included, the standard boot process is used.

The boot fails if you specify Compressed and the image isn't compressed. It also fails if you don’t specify Compressed and the image is compressed.

IMPORTANT:The name of the compressed image must contain the suffix .gz and must be compressed with the gzip tool or by using the --gzip option at create time.

SYNC=

 

Specifies an optional syncfile (syncfilename) to download over TFTP. The syncfile indicates the number of seconds to wait before downloading the image.

 

syncfilename

The name of the syncfile downloaded over TFTP.

 

srv_ip

The server IP address for the TFTP download.

This variable must always be included in the SYNC= parameter.

 

bsize

The block size for the TFTP download. If the block size is too small according to the maximum number of data packages (32768), linuxrc automatically calculates a new block size for the download.

This variable must always be indicated in the SYNC= parameter.

CONF=

 

Specifies the configuration files to download to the Point of Service terminal. The data is provided in a comma-separated list of source:target configuration files.

 

source

The path to the source configuration file on the TFTP server.

 

dest

The directory on the Point of Service terminal where you want to download the source configuration file.

 

srv_ip

The server IP address for the TFTP download.

This variable must always be included in the CONF= parameter.

 

bsize

The block size for the TFTP download. If the block size is too small according to the maximum number of data packages (32768), linuxrc automatically calculates a new block size for the download.

This variable must always be included in the CONF= parameter.

PART

 

Specifies partitioning data. The data is provided in a comma-separated list.

The first element of the list defines the swap partition. The second element defines the root partition. Each element must include the size (size), the type (id), and the mount point (mount).

 

size

The size of the partition.

If you want the partition to take all the space left on a disk, use a lowercase letter x as the size specification.

 

id

The partition type: S for swap, L for all others.

 

mount

The partition mount point; for example, /home.

IMPORTANT:The swap partition must not contain a mount point. Use a lowercase letter x instead.

JOURNAL=

 

Specifies a journaling file system. The value for this parameter must be set to ext3 because the only journaled file system Novell Linux Point of Service supports is ext3.

If you have an existing ext2 image, you can change the file system by setting a flag in the scCashRegister or the scWorkstation objects rather than recreate the image. If ext3 is specified in either LDAP object, the Point of Service terminal extends the file system to ext3 when the image is deployed.

The JOURNAL= parameter is evaluated only if the DISK= parameter is set.

DISK=

 

Defines the device through which the hard disk can be addressed; for example /dev/hda.

This parameter is used only with PART.

RELOAD_IMAGE=

 

If set to a non-empty string, this parameter forces the configured image to be loaded from the server even if the image on the disk is up-to-date.

The posldap2crconfig.pl script overwrites this optional feature of the Point of Service configuration file.

This parameter is used mainly for debugging purposes. It is pertinent only on disk-based systems.

RELOAD_CONFIG=

 

If set to an non-empty string, this parameter forces the config.MAC_address file to be loaded from the server.

If you run posldap2crconfig.pl --dumpall to regenerate the config.MAC_address file, it overwrites this optional parameter.

This parameter is used mainly for debugging purposes. It is pertinent only on disk-based systems.

Here is a sample config.MAC_address file:

IMAGE=/dev/hda2;image/browser;2.0.21;192.168.1.1;4096;compressed
CONF=/CR/00:30:05:1D:75:D2/ntp.conf;/etc/ntp.conf;192.168.1.1;1024,
     /CR/00:30:05:1D:75:D2/XF86Config;/etc/X11/XF86Config;
     192.168.1.1;1024
PART=200;S;x,300;L;/,500;L;/opt,x;L;/home
DISK=/dev/hda

3.5.2 The config.image File

The config.image file is similar in function to config.MAC_address. It contains the parameters required to configure a specific Point of Service terminal during a CDBoot; that is, it indicates which client image the CDboot boot image should load and how to do it. The CD-based Point of Service configuration file must be named config.image and it must be located in the CD setup directory.

The format of the config.image file is as follows:

IMAGE=device;image;version;compressed
CONF=source;dest,...,source;dest
PART=size;id;Mount,...,size;id;Mount
JOURNAL=ext3
DISK=device
FEATURE=The contents of the --feature option
EXTEND=The contents of the --extend option
PARAMS=Additional options

Table 3-2 provides a detailed description of each parameter in config.image and its variables.

Table 3-2 config.image configuration file parameters

Parameter

Variable

Description

IMAGE=

 

Specifies the client image (image) and version (version) that will be loaded on the Point of Service terminal.

When you generate the CDBoot image, ImageBuilder uses this information to generate the client image with the CDBoot image.

 

device

The storage device to which the image is linked, for example, /dev/ram1 or /dev/hda2.

RAM devices should not be confused with hard disk devices which use a partition table. On a Point of Service terminal, partition hda1 is used for the swap partition and hda2 defines the root file system ( / ). On the RAM disk device, /dev/ram0 is used for the initial RAM disk and cannot be used as storage device for the client image. It is recommended that you use /dev/ram1 for the RAM disk.

 

image

The name of the client image to load on the Point of Service terminal.

 

version

The version of the client image to load on the Point of Service terminal.

 

compressed

Specifies a compressed image boot. If the compressed variable is not included, the standard boot process is used.

The the boot fails if you specify Compressed and the image isn't compressed. It also fails if you don’ specify Compressed and the image is compressed.

IMPORTANT:The name of the compressed image must contain the suffix .gz and must be compressed with the gzip tool or by using the --gzip option at create time.

CONF=

 

Specifies the configuration files to download to the Point of Service terminal. The data is provided in a comma-separated list of source:target configuration files.

 

source

The path to the source configuration file within the directory.

 

dest

An absolute path below the client image where the configuration file is saved.

PART=

 

Specifies partitioning data. The data is provided in a comma-separated list.

The first element of the list defines the swap partition. The second element defines the root partition. Each element must include the size (size), the type (id), and the mount point (mount).

 

size

The size of the partition.

If you want a partition to take all the space left on a disk, use a lowercase letter x as the size specification.

 

id

The partition type: S for swap, L for all others.

 

mount

The partition mount point; for example, /home.

IMPORTANT:The swap partition must not contain a mount point. Use a lowercase letter x instead.

JOURNAL=

 

Specifies a journaling file system. The value for this parameter must be set to ext3 because the only journaled file system Novell Linux Point of Service supports is ext3.

If you have an existing ext2 image, you can change the file system by setting a flag in the scCashRegister or the scWorkstation objects rather than recreate the image. If ext3 is specified in either LDAP object, the Point of Service terminal extends the file system to ext3 when the image is deployed.

The JOURNAL= parameter is evaluated only if the DISK= parameter is set.

DISK=

 

Defines the device through which the hard disk can be addressed; for example /dev/hda.

This parameter is used only with PART=.

FEATURE=

 

This is the value of the --feature command used when building the client image. For information on this command, refer to Section 8.1, scr Commands or Section 9.1, xscr Commands.

This optional parameter is only pertinent while ImageBuilder creates the client image.

EXTEND=

 

This is the value of the --extend option used to extend an image with an additional RPM package. For information, refer to Section 8.1, scr Commands.

This optional parameter is only pertinent while ImageBuilder creates the client image.

IMPORTANT:This parameter is only relevant to standard client images generated with scr. The xscr ImageBuilder tool uses the ImageSpecification.xml document to extend client images.

PARAMS=

 

Specifies options that are used for special actions. This parameter is only pertinent while ImageBuilder creates the client image.

This parameter can be used with the --gzip option to compress the image. The CDboot linuxrc recognizes a compressed image referring to the suffix .gz. A compressed CD image is uncompressed on the fly while the image is installed. For information on this command, refer to Section 8.1, scr Commands or Section 9.1, xscr Commands.

For POSBranch images, it is recommend that you add the following line to the config.image file:

PARAMS=--keep-rpm

This allows you to use the YaST2 interface to configure POSBranch Servers. However, it adds approximately 30 MB to the size of the image. If the size of the image is an issue, you can leave the RPMs out; however, you will not have YaST2 functionality.

For more information on creating a CDBoot image, see Section 10.1, Building a CDBoot Image.

3.5.3 The hwtype.MAC_address File

When a Point of Service terminal comes online for the first time, it does not have a config.MAC_address file on the Branch Server. To create this file for the terminal, the system must first register the Point of Service terminal in LDAP. This is done through the Point of Service control file, hwtype.MAC_address. The Point of Service control file contains the information required to create the terminal’s workstation object (scWorkstation) in LDAP and determine which image and configuration settings should be included in the terminal’s configuration file (config.MAC_address).

The Point of Service control file is formatted as follows:

HWTYPE=hardware type
HWBIOS=bios version
CRNAME=alias name

NOTE:If no alias name is set, the default name of “undefined” is used.

The process used to create the config.MAC_address file from the hwtype.MAC_address file is as follows:

  1. During the Point of Service boot process, the hardware type, BIOS version, and Point of Service alias name are detected.

    NOTE:The Point of Service hardware manufacturer provides a program for this function.

  2. Using this information, the posleases2ldap.pl script creates the control file, hwtype.MAC_address.

    For more information, see Section A.3.8, posleases2ldap.pl.

  3. The linuxrc program uploads hwtype.MAC_address to the Branch Server’s upload directory, /tftpboot/upload.

    NOTE:The control file is uploaded to the TFTP server only when no configuration file (config.MAC Address) exists.

  4. The hardware type identified in the hwtype.MAC_address file is compared to the scCashRegister objects in the LDAP directory.

    If a match is found, the information in scCashRegister and its associated objects is used to create the Point of Service terminal’s scWorkstation object in LDAP and its config.MAC_address file in the Branch Server’s /tftpboot/CR directory. After the config.MAC_address file is created, the hwtype.MAC_address file is deleted.

    If the hwtype is unknown, the information in the default scCashRegister object is used to create the Point of Service terminal’s scWorkstation object and config.MAC_address file.

    IMPORTANT:This safety net feature works only if you have configured designated a default scCashRegister object in the LDAP directory. For information on defining a default scCashRegister object, see Section 6.4.1, Adding an scCashRegister Object.

For a detailed review of the core scripts involved in this process, see Section A.2, Core Script Process.