63.6 Imaging Server (Imgserv.nlm or .dll or .dlm, or Linux Daemons)

The ZENworks Imaging server is a software component of the Desktop Management server. It enables imaging clients (workstations that are booted from an imaging device) to connect with the network to receive imaging services, including:

Use the ZENworks Imaging server to do the following:

63.6.1 Initiating the Imaging Processes on Linux Imaging Servers

An imaging server daemon is initiated by running the script at the Linux terminal program command line, which in turn calls the executable and uses the configuration set in the corresponding .conf file. Because the scripts do not normally accept parameters, but only arguments (such as start), you can configure parameters in their corresponding .conf files.

The following Linux daemons and libray file run the imaging server processes:

libzmgserv.so

The libzmgserv.so library file is used by eDirectory to provide imaging services to the devices.

This library file is used automatically by eDirectory when installing ZENworks Linux Management, or when rebooting the server.

novell-proxydhcp

The novell-proxydhcp daemon provides PXE devices with the information that they require in order to connect to the ZENworks Preboot Services system.

This daemon is not started automatically when installing ZENworks Linux Management.

Understanding the novell-proxydhcp Components

To initiate the novell-proxydhcp daemon, enter the following command listed for Script Location on the Linux command line in a terminal program:

/etc/init.d/novell-proxydhcp

This command executes /opt/novell/bin/novell-proxydhcpd.

The following script arguments are available for the novell-proxydhcp command:

start

restart

status

install

stop

force-reload

showpid

 

For descriptions of these arguments, see Understanding Script Arguments.

Configuring novell-proxydhcp

The novell-proxydhcp configuration file (/etc/opt/novell/novell-proxydhcp.conf), contains the following parameters:

Table 63-7 Novell-proxydhcp Parameters

Parameter

Description

LocalDHCPFlag = 0

Indicates whether the DHCP server for this subnet resides on the same server as novell-proxydhcp.

0 (the default) means novell-proxydhcp is not running on the same server as the DHCP service. 1 means they are running on the same server.

The Proxy DHCP server needs to behave slightly differently if it is loaded on the same server as the DHCP service.

LocalInterface = 10.0.0.1

Indicates the IP address to be used by the Proxy DHCP server. This setting is intended only for use on servers with multiple LAN interfaces. The IP address must be valid on the server.

By default, this parameter is commented out.

NovellPolicyEngine = 10.0.0.1

The IP address of the server where a Novell Preboot policy engine is running. Most often, this is a ZENworks imaging daemon. If no value is specified, the Proxy DHCP assumes that the daemon is running on the same server.

By default, this parameter is commented out.

NBPx86 = nvlnbp.sys

The name of the boot file this service suggests for all x86 computers, such as nvlnbp.sys.

MenuTimeout = 2

The number of seconds the F8 menu is displayed before automatically choosing the first option, which is always this server and its default NBP. The default is 2 seconds.

ProxyLogLevel = 2

The value assigned here determines which events are entered in novell-proxydhcp.log. Specifying a high level in an active system can quickly fill the log. Valid values are 0, 1, 2, 3, and 4. The default is 2.

Each message from the Proxy DHCP server is assigned a priority level. If ProxyLogLevel is set to a value equal to or greater than a message’s priority level, that message is entered in novell-proxydhcp.log. All other messages are ignored.

Priority meaning:

0: Critical information. Service start, stop, and critical events are logged.

1: Warning information. Additionally, warning information is logged.

2: Transaction information. All completed client transactions are logged.

3: Request information. All client requests and Proxy DHCP requests received are logged, including ignored requests. If a request is ignored, the reason for ignoring it is also logged.

4: Debugging information. All DHCP packets received and accepted are decoded and logged.

ProxyLogFile = /var/opt/novell/log/novell-proxydhcp.log

The file where all log file entries are placed. It is located at /var/opt/novell/log/novell-proxydhcp.log.

By default, this parameter is commented out.

ProxyLogFileSize = 15

The size of the ProxyLogFile file is controlled by the value of ProxyLogFileSize, where 15 is the default (in MB).

When the log file exceeds the ProxyLogFileSize value, it is deleted and restarted.

Parameters that are not commented out, but contain no values, are given a default value.

The novell-proxydhcp daemon is compliant with the following RFCs:

  •    RFC 2131: Dynamic Host Configuration Protocol
  •    RFC 2132: DHCP Options and BOOTP Vendor Extensions

The novell-proxydhcp daemon is compliant with the Preboot eXecution Environment (PXE) Specification v2.1 industry specification, published by Intel.

novell-tftp

The novell-tftp daemon provides TFTP services to imaging clients.

This daemon is started automatically when installing ZENworks Linux Management, or when rebooting the server.

Understanding the novell-tftp Components

To initiate the novell-tftp daemon, enter the following command (listed under Script Location) on the Linux command line in a terminal program:

/etc/init.d/novell-tftp

This command executes /opt/novell/bin/novell-tftpd.

The following script arguments are available for the novell-tftp command:

start

restart

status

 

stop

force-reload

showpid

 

For descriptions of these arguments, see Understanding Script Arguments.

Configuring novell-tftp

The novell-tftp configuration file (/etc/opt/novell/novell-tftp.conf), contains the following parameters for the Novell TFTP server:

Table 63-8 Novell-tftp Parameters

Parameter

Description

TFTPInterface = 10.0.0.1

The IP address that is used for all TFTP communications. If a value is not given here, the service tries to detect one.

This value is most useful for multihomed servers.

By default, this parameter is commented out.

TransferBlockSize = 1428

This value determines the size of the data block used by the TFTP server to transmit and receive data to and from a client. Valid values are between 512 and 4428.

For Ethernet networks, this value should be 1428.

For token ring networks, this value can be 4428, but only if you are sure there are no Ethernet segments; otherwise, use 1428.

Older TFTP clients might be restricted to 512 bytes, which is the original transfer block size before the adoption of RFC 2348. The Novell TFTP server is compatible with these clients.

By default, this parameter is commented out.

TimeoutInterval = 1

This is the amount of time (in seconds) that the TFTP server waits for a client to acknowledge before resending a packet. However, because the TFTP server uses an adaptive algorithm to calculate the actual timeout interval, this value is only used as an initial value. It can increase or decrease, depending on the performance of the network.

This value is only a default. It can be changed at the request of a client. See RFC 2349.

Valid values are 1 through 60.

By default, this parameter is commented out.

Linux -- TFTPDirectory = /srv/tftp

TFTPDirectory is the directory where the TFTP server can store and retrieve files. All paths submitted to the TFTP server by clients are assumed to be relative to this directory.

Because TFTP has no security, it is suggested that you not place files with sensitive information in this directory, and that you place a space quota on it.

The TFTP server does not load if this directory does not exist.

By default, this parameter is commented out.

TFTPAllowWrites = 0

This tells the TFTP server whether to allow users to place new files on the server. Setting this variable to 0 (the default) makes the TFTP server more secure by not allowing users to place new files on the server. The other option is 1, which allows users to place new files on the server.

AllowOverwrites = 0

This tells the TFTP server whether to allow users to overwrite existing files on the server. Setting this variable to 0 (the default) makes the TFTP server more secure by not allowing users to overwrite files on the server. The other option is 1, which allows users to overwrite files on the server.

TFTPAllowWrites must be set to 1 in order for the AllowOverwrites parameter to be recognized.

TFTPLogLevel = 2

The value assigned here determines which events are entered in novell-tftp.log. Specifying a high level in an active system can quickly fill the log. Valid values are 0, 1, 2, 3, and 4. The default is 2.

Each message from the TFTP server is assigned a priority level. If TFTPLogLevel is set to a value equal to or greater than a message’s priority level, that message is entered in novell-tftp.log. All other messages are ignored.

Priority meaning:

0: Critical information. Service start, stop, and critical events are logged.

1: Warning information. Only failed client transactions are logged.

2: Transaction information. All completed client transactions are logged.

3: Request information. All client requests and TFTP options are logged.

4: Debugging information. All server events, including each packet received, are logged.

By default, this parameter is commented out.

TFTPLogFile = /var/opt/novell/log/novell-tftp.log

The file where all log file entries are placed.

By default, this parameter is commented out.

TFTPLogFileSize = 15

The size of the log file is controlled by the value of TFTPLogFileSize, where 15 is the default (in MB).

When the log file exceeds the TFTPLogFileSize value, it is deleted and restarted.

By default, this parameter is commented out.

Parameters that are not commented out, but contain no values, are given a default value.

The novell-tftp daemon is compliant with the following RFCs:

  •    RFC 1350: THE TFTP PROTOCOL (REVISION2)
  •    RFC 2347: TFTP Option Extension
  •    RFC 2348: TFTP Blocksize Option
  •    RFC 2349: TFTP Timeout Interval and Transfer Size Options

novell-zmgprebootpolicy

The novell-zmgprebootpolicy daemon allows PXE devices to query the ZENworks Linux Management system for work to do and for Preboot Menu policies.

This daemon is started automatically when installing ZENworks Linux Management, or when rebooting the server.

Understanding the novell-zmgprebootpolicy Components

To initiate the novell-zmgprebootpolicy daemon, enter the following command (listed under Script Location) on the Linux command line in a terminal program:

/etc/init.d/novell-zmgprebootpolicy

This command executes /opt/novell/zenworks/preboot/bin/novell-zmgprebootpolicyd.

The following script arguments are available for the novell-zmgprebootpolicy command:

start

restart

status

 

stop

force-reload

showpid

 

For descriptions of these arguments, see Understanding Script Arguments.

Configuring novell-zmgprebootpolicy

The novell-zmgprebootpolicy configuration file (/etc/opt/novell/zenworks/preboot/novell-zmgprebootpolicy.conf), contains the following parameters:

Table 63-9 Novell-zmgprebootpolicy Parameters

Parameter

Description

LocalInterface = 10.0.0.1

The IP address that is used by the policy server.

This setting is intended only for use on servers with multiple LAN interfaces. The address must be valid on the server.

By default, this parameter is commented out.

PolicyLogLevel = 1

The value assigned here determines which events are entered in novell-zenprebootpolicy.log. Specifying a high level in an active system can quickly fill the log. Valid values are 0, 1, 2, 3, and 4. The default is 2.

Each message from the novell-zmgprebootpolicy server is assigned a priority level. If PolicyLogLevel is set to a value equal to or greater than a message’s priority level, that message is entered in novell-zenprebootpolicy.log. All other messages are ignored.

Priority meaning:

0: Critical information. Service start, stop, and critical events are logged.

1: Warning information. Only failed client transactions are logged.

2: Transaction information. All completed client transactions are logged.

3: Request information. All client requests are logged.

4: Debugging information. All server events, including each packet received, are logged.

By default, this parameter is commented out.

PolicyLogFile = /var/opt/novell/log/zenworks/preboot/novell-zmgprebootpolicy.log

The file where all log file entries are placed.

By default, this parameter is commented out.

PolicyLogFileSize = 15

The size of the log file is controlled by the value of PolicyLogFileSize, where 15 is the default (in MB).

When the log file exceeds the PolicyLogFileSize value, it is deleted and restarted.

PrebootServer = 10.0.0.5

This field contains the address of the ZENworks Imaging server that should be used to resolve policies.

By default, this parameter is commented out.

Parameters that are not commented out, but contain no values, are given a default value.

Understanding Script Arguments

The following arguments are available for each of the Preboot Services daemons described above:

Table 63-10 Script Arguments

Argument

Function

start

Starts the daemon.

Because novell-proxydhcp is optional, use this argument to start this daemon. However, this daemon does not automatically start when the server reboots. (See install below.)

stop

Stops the daemon.

restart

Stops and restarts the daemon if it is already running.

force-reload

Causes the daemon’s configuration file to be reloaded.

status

Displays the current status of the daemon.

For example, if you enter /etc/inid.d/novell-proxydhcp status, information similar to the following is returned:

Novell ZENworks Proxy DHCP Service running

showpid

Displays the daemon’s process ID.

For example, if you enter /etc/inid.d/novell-proxydhcp showpid, information similar to the following is returned:

Novell ZENworks Proxy DHCP Service running
10211

install

For novell-proxydhcp only, causes the daemon to be automatically loaded when the server boots.

63.6.2 Initiating the Imaging Processes on Windows or NetWare Imaging Servers

The ZENworks Imaging server modules are located on a NetWare server in sys:\system or on a Windows server in the directory where eDirectory is installed (such as c:\novell\nds).

In most environments, the ZENworks Imaging server starts automatically when you reboot the server after installing Desktop Management. With eDirectory 8.5 on Windows, you must start the ZENworks Imaging server manually as follows: from the directory where eDirectory is installed, double-click ndscons.exe, select the imgsrv.dlm service, then click Start. You might also want to click Startup to configure the service to start automatically each time the server reboots.

You can use the following parameters with the ZENworks Imaging server:

Table 63-11 ZENworks Imaging Server Parameters

Parameter

Description

-i:ip_address

Used in a clustering environment to specify the IP address of the virtual server. This parameter is automatically set during installation in a clustering environment.

You can also use this parameter in a multiple-NIC environment to bind the ZENworks Imaging server to a specific IP address.

-s:DN

Used in a clustering environment to specify the DN of the virtual server. If the DN contains spaces, enclose the DN in quotation marks. This parameter is automatically set during installation in a clustering environment.

63.6.3 Viewing Information About Imaging Requests

After the ZENworks Imaging server has started, you can view information about the status and results of the imaging requests that it has received from imaging clients. A statistical summary of these requests is shown on the NetWare server console, in a window accessible from the Windows taskbar, or from the command line on a Linux server. The Linux server commands are:

  • For the local server:

    /opt/novell/zenworks/preboot/bin/novell-zmgmcast -status
    
  • For a remote server:

    /opt/novell/zenworks/preboot/bin/novell-zmgmcast -status -i remote_server_ID
    

    where remote_server_ID is the IP address or DNS of the remote server.

All statistics are reset to zero when you restart the ZENworks Imaging server.

The statistics shown on this screen are explained in Table 63-12.

Table 63-12 Imaging Request Statistics

Statistic

Specifies

Update Requests

The number of imaging requests of any kind that have been received by the ZENworks Imaging server since it was started. This includes requests that failed, were denied, or were referred to other Imaging servers (see Client Referrals below). Information about each of these requests is logged on the ZENworks Imaging server, including the source, type, date/time, and results, as explained in Section 63.7, Imaging Server Log (Zimglog.xml).

Images Sent

The number of images that the ZENworks Imaging server has sent to imaging clients since the ZENworks Imaging server was started. This includes only images that are retrieved from this ZENworks Imaging server. See Client Referrals below for more information.

Images Received

The number of new images that have been received and stored on the ZENworks Imaging server since it was started. This includes images that were received through client referrals (see Client Referrals below).

Client Referrals

The number of client requests that have been referred (redirected) by the ZENworks Imaging server to other ZENworks Imaging servers since this ZENworks Imaging server was started. Such referrals are made only when the client is running in auto-imaging mode and the ZENworks Imaging server determines from eDirectory that the image to be created or retrieved is on a different ZENworks Imaging server.

IMPORTANT:If a client is running in manual imaging mode and it requests to store or retrieve an image on a different ZENworks Imaging server, the request is denied and an error is returned to the client. Referrals are currently supported only when the client is running in auto-imaging mode.

63.6.4 Starting a Manual Multicast Session

On the server console (NetWare) or in a window accessible from the system tray (Windows), you can start a manual multicast session, see any sessions in progress, and delete sessions. For more information, see Initiating a Multicast Session from Each Client in Section 62.0, Multicasting Images.