[an error occurred while processing this directive]

HP OpenVMS Systems Documentation

Content starts here HP TCP/IP Services for OpenVMS

HP TCP/IP Services for OpenVMS
Management


Previous Contents Index

Part 6
Configuring Printing Services

Part 6 describes how to set up and manage the printing services available with TCP/IP Services, and includes the following chapters:


Chapter 24
Setting Up and Managing the LPR/LPD Print Service

The LPR/LPD facility allows other network hosts to access printers on the server system and provides local access to printers on remote hosts. Remote print server and the client hosts must run Version 4.2 or later of the Berkeley Software Distribution line printer spooler software ( lpd ) to interoperate with TCP/IP Services LPR/LPD.

This chapter reviews key concepts and describes:

24.1 Key Concepts

The LPR/LPD facility has both a client component (LPR) and a server component (LPD), both of which are partially included in an OpenVMS queue symbiont. The client is activated when you use one of the following commands:

  • PRINT---to submit a print job to a remote printer whose queue is managed by the LPD symbiont.
  • LPRM---to remove (cancel) a pending print job previously spooled.
  • LPQ---to view the queue of pending jobs for a remote printer.

For general information about using these commands, see the HP TCP/IP Services for OpenVMS User's Guide.

The server is activated when a remote user submits a print job to a printer configured on the OpenVMS server. The LPD server consists of two components:

  • LPD receiver---a process that handles the incoming request from the remote system over the network. It copies the control file (CF) and data file (DF) representing the print job to the requested printer's LPD spool directory, and places the control file on the print queue for further processing. The receiver also handles LPQ and LPRM functions from remote clients.
  • LPD symbiont---which parses the print job's control file and submits the data files to the designated local printer's print queue.

The same LPD symbiont image is used for both client and server. It acts as the client on queues set up for remote printers, and it acts as the server on the local LPD queue.

The LPD uses the printcap database to process print requests. The printcap database, located in SYS$SPECIFIC:[TCPIP$LPD]:TCPIP$PRINTCAP.DAT, is an ASCII file that defines the print queues. The printcap entries are similar in syntax to the entries in a UNIX /etc/printcap file.

Use the printer setup program LPRSETUP to configure or modify printers. The setup program creates spool directories and log files based on the information you supply. Section 24.4 describes how to use the printer setup program to configure printers.

24.2 Configuring LPR/LPD

When you enable the LPD service, the TCPIP$CONFIG.COM command procedure:

  • Adds the LPD service to the services database.
  • Adds the TCPIP$LPD account to the SYSUAF.DAT database.
  • Creates the directory SYS$SPECIFIC:[TCPIP$LPD] for the TCPIP$LPD account.
  • Enables both client and server components.
  • Creates the configuration file TCPIP$LPD_CONF.TEMPLATE in the directory TCPIP$LPD_ROOT:[000000].

You can use the TCPIP$LPD_CONF.TEMPLATE file to create a TCPIP$LPD.CONF configuration file, which allows you to change the way the LPD facility operates. For guidelines about specifying configuration options in the LPD.CONF file, see Section 1.1.5.

After you modify the TCPIP$LPD.CONF file, you must stop and restart LPD using the TCPIP$LPD_STARTUP.COM and TCPIP$LPD_SHUTDOWN.COM command procedures.

Table 24-1 describes the configuration options.

Table 24-1 LPD Configuration Options and Descriptions
Configuration Option Description
1st-VFC-Prefix-Special Specifies not to insert an extra line-feed character at the beginning of print files.
Droptime Indicates how long after repeated timeouts a connection should be maintained before closing the connection. The value is specified in seconds.

The Drop timer is in effect only after the link has been established, and it takes effect only if the Keepalive configuration option is set. The default value for the Drop timer is 300 seconds.

Idle-Timeout Specifies the length of time for the LPD server to wait for an incoming LPD connection, in OpenVMS delta time format. The default is 5 minutes. This behavior requires that the Persistent-Server option be specified.
Inbound-Queues-Per-Node Specifies the number of inbound execution queues to create for each cluster node when the LPD server starts. The default is 1.
Keepalive Specifies the number of seconds to wait before checking the other end of a link that appears to be idle. The Keepalive timer detects when a remote host has failed or has been brought down, or when the logical connection has been broken.
Loop-Max Specifies the maximum number of times the LPD server should retry a connection. The default is no maximum (the same as setting this option to 0). This behavior requires that the Persistent-Server option be specified.
Persistent-Server Enables the persistence of the LPD server. This behavior is disabled by default.
Probetime Specifies the number of seconds to wait before timing out the connection.

The value of the Probetime option must always be less than or equal to the value of the Droptime option. The default value for the Probetime option is 75 seconds.

The Probe timer controls:

  • When establishing an initial connection, the number of seconds TCP/IP Services will wait for a response before a timeout occurs. The time is active regardless of whether the Keepalive configuration option is set.
  • The length of time (in seconds) allowed to pass before TCP/IP Services checks an idle connection. This requires that the Keepalive configuration option be set.
PS-Extensions Controls HP PrintServer extension support. By default, PrintServer extensions are supported by LPD. To disable support, specify the NON_PS keyword to this option. To enable support, specify the LPS keyword.
Retry-Interval Specifies the amount of time to wait before requeuing a print job that failed because of a soft error, such as the loss of the TCP connection. The default is 5 minutes ( 0 00:05:00.00 ).
Retry-Maximum Specifies the OpenVMS delta time for which the LPD symbiont will continue to requeue a print job that has failed with a soft error. The default is 1 hour ( 0 01:00:00.00 ).
Setup-NoLF By default, the LPD server inserts a line feed into the byte stream after the SETUP module and before the actual print file. This option allows you to control this behavior. To prevent LPD from inserting line-feed characters, set this option to TRUE. For information about controlling this behavior using the printcap file, see Section 24.4.
Stream-Passall Controls whether LPD will add extra line feed characters to files with embedded carriage control (the default). Set this option to preserve the behavior of previous versions of TCP/IP Services. This is useful when your users print from HP PATHWORKS Client software.
Utility-Queues-Per-Node Specifies the number of outbound execution queues to create for each cluster node when the LPD server starts. The default is 0.
Synchronize-All-Jobs Controls whether the the LPD print symbiont process running in an inbound execution queue (TCPIP$LPD_IN_ nodename_ nn) will synchronize on the completion of each job that it submits to a final destination print queue.

If the LPD service log option LOGOUT is set using the TCP/IP management command SET SERVICE/LOG, when a print job submitted by the symbiont process completes, the LPD server synchronizes and sends an OPCOM message containing the job number, queue name, and user and host names of the submitter.

Each synchronization causes the consumption of one slot of the symbiont process's AST quota and some dynamic memory. If many jobs submitted by an LPD symbiont process are pending (for example, because the print queue to which they were submitted has been stopped), the symbiont process can exhaust its AST quota or virtual memory.

If the Synchronize-All-Jobs option is set to FALSE, synchronization occurs only for print jobs that have either an LPD mailback completion notice or a temporary layup file sent from the LPD client to be used in the printing of the job.

Setting this option to FALSE helps limit the exhaustion of dynamic memory or AST quota when many print jobs are outstanding, because most print jobs do not use mailback completion (/PARAMETERS=MAIL) or layup files (/PARAMETERS=LAYUP_DEFINITION).

The default setting for the Synchronize-All-Jobs option is TRUE, which is appropriate for most sites. Systems with heavy inbound processing across many print queues might need to set this option to FALSE.

VMS-Flagpages Enables the OpenVMS flag-page print options described in Section 24.10.
Symbiont-Debug Writes diagnostics to the LPD queue log file. Applies to outbound jobs (LPD client) and to inbound jobs (LPD server) that are processed by the LPD symbiont controlling the local print queue. See Section 24.11 for more information.
Receiver-Debug Writes diagnostics to the receiver log file TCPIP$LPD_RCV_LOGFILE.LOG. Applies to inbound jobs (LPD server) from the time they are received from the remote host over the network to the time they are queued to the local print queue for processing by the LPD print symbiont. See Section 24.11 for more information.

24.3 LPD Server Startup and Shutdown

The LPD server can be shut down and started independently of TCP/IP Services. This is useful when you change parameters or configuration options that require the service to be restarted.

The following files are provided:

  • SYS$STARTUP:TCPIP$LPD_STARTUP.COM allows you to start up the LPD server independently.
  • SYS$STARTUP:TCPIP$LPD_SHUTDOWN.COM allows you to shut down LPD server independently.

To preserve site-specific parameter settings and commands, create the following files. These files are not overwritten when you reinstall TCP/IP Services:

  • SYS$STARTUP:TCPIP$LPD_SYSTARTUP.COM can be used as a repository for site-specific definitions and parameters to be invoked when the LPD server is started.
  • SYS$STARTUP:TCPIP$LPD_SYSHUTDOWN.COM can be used as a repository for site-specific definitions and parameters to be invoked when the LPD server is shut down.

24.4 Configuring Printers

This section describes how use the printer setup program, SYS$SYSTEM:TCPIP$LPRSETUP.EXE, to configure a printer directly connected to your computer. Similar to the UNIX /usr/sbin/lprsetup utility, you can also use this program to modify a printer's configuration or to remove a printer.

Before running the printer setup program, you need the following information for each printer you want to configure:

  • Printer name, including all synonyms (aliases)
  • Printer type (local or remote)
  • Host and printer name for the remote printer
  • Spool directory
  • Error log directory

Note

Inbound execution queues do not have printcap entries; rather, they take on the characteristics of the local queues to which they submit print jobs.

The printer setup program performs the following:

  • Creates or edits the existing printcap database.
  • Creates a spooling directory.
  • Creates an error log file.
  • Prompts you to modify previously selected symbols.

Table 24-2 describes the LPRSETUP commands.

Table 24-2 LPRSETUP Commands
Command Description
add Adds a printer name. The printer name is the name of a LPD client print queue that users can specify in the /QUEUE qualifier to the PRINT command.
delete Removes an existing printer from your configuration.
view Displays the contents of the current printcap database.
help Displays online help about the LPRSETUP program.
exit Exits from the LPRSETUP program.

You can abbreviate any command option with its initial letter. Enter information at each prompt, or press Return (or Enter) to accept the default. Enter a question mark (?) to obtain a description of the information requested at each prompt.

The following example shows how to use the printer setup program to configure a printer named LOCAL1:


$ RUN SYS$SYSTEM:TCPIP$LPRSETUP

TCPIP Printer Setup Program

Command  < add delete view help exit >: add
Adding printer entry, type '?' for help.

Enter printer name to add : LOCAL1
Enter the FULL name of one of the following printer types:
remote local : local
Enter printer synonym:

Enter full file specification for spool directory
SPOOLER DIRECTORY 'sd' :  [SYS$SPECIFIC:[TCPIP$LPD.LOCAL1]] ?
Enter full file specification for printer log file.
printer error log file 'lf' [SYS$SPECIFIC:[TCPIP$LPD]LOCAL1.LOG] ?
Enter the name of the printcap symbol you want to modify.  Other
valid entry is :
        'q'     to quit (no more changes)

The names of the printcap symbols are:

 sd for the printer spool directory
 lf for the printer error log file
 lp for the name of the local printer
 ps for the LPD PrintServer extensions flag
 rm for the name of the remote host
 rp for the name of the remote printer
 fm for the printer form field
 pa for the /PASSALL flag
 nd for the /NODELETE flag
 cr for the cr flag
 sn for the setup NoLF flag
 p1-p8 for the /PARAMETER=(p1,...,p8) field

Enter symbol name: q

                    Symbol  type  value
                    ------  ----  -----
Error log file    :  lf     STR   /SYS$SPECIFIC/TCPIP$LPD/LOCAL1.LOG
Printer Queue     :  lp     STR   LOCAL1
Spool Directory   :  sd     STR   /SYS$SPECIFIC/TCPIP$LPD/LOCAL1

Are these the final values for printer LOCAL1 ? [y]

Adding comments to printcap file for new printer, type '?' for help.
Do you want to add comments to the printcap file [n] ? :


        ***********************************************
        * TCPIP$LPD_SYSTARTUP.COM   TCPIP$LPD_PRINTCAP*
        *    and TCPIP$LPD_SYSHUTDOWN.COM             *

        *  have been updated for this printer         *
        *                                             *
        * Set up activity is complete for this printer*
        ***********************************************


Command  < add delete view help exit >: exit


The following example shows how to use the printer setup program to remove a printer from the printcap database:


$ RUN SYS$SYSTEM:TCPIP$LPRSETUP

Command  < add delete view help exit >: delete
Deleting a printer entry, type '?' for help.

Enter printer name to delete (or view to view printcap file): LOCAL1

                    Symbol  type  value
                    ------  ----  -----
Error log file    :  lf     STR   /SYS$SPECIFIC/TCPIP$LPD/LOCAL1.LOG
Printer Queue     :  lp     STR   LOCAL1
Spool Directory   :  sd     STR   /SYS$SPECIFIC/TCPIP$LPD/LOCAL1

Delete LOCAL1, are you sure? [n]  y

Deleted file: /SYS$SPECIFIC/TCPIP$LPD/LOCAL1.LOG
Deleted files from spooling directory: /SYS$SPECIFIC/TCPIP$LPD/LOCAL1
Removed spooling directory: /SYS$SPECIFIC/TCPIP$LPD/LOCAL1.DIR

Command  < add delete view help exit >: exit

24.4.1 Printer Characteristics

You can modify the printer configuration by specifying two-character printcap symbols and associated values. Table 24-3 describes the printcap symbols.

Table 24-3 Printcap Symbols
Symbol Description
sd Printer spool directory, specified as a UNIX path name.
lf Error log file, specified as a UNIX path name. This is optional. If you do not specify an error log file, errors are logged to the operator console.

An error log can be shared by all local printers if you specify the same file in each printcap printer entry.

lp Name of the local printer.
ps LPD PrintServer extensions flag.
rm Name of the remote host.
rp Name of the remote printer. The printer name is case sensitive. If you are configuring an LPD print queue to print ASCII text files to an HP LaserJet printer with a JetDirect network card, set the value of the rp printcap field to text. For example:
:rp = text\

To configure this type of printer for printing PostScript or binary files, set this field to raw.

fm Printer form field. This is equivalent to the OpenVMS command PRINT/FORM. For example, :fm=CENTER:\ allows the job to print as if the following command were entered:
$ PRINT
file-name/FORM=CENTER

Forms have attributes like print image width and length, or paper stock, which are associated with the print queue when it starts up. To see which forms have been defined for your system, use the DCL command SHOW QUEUE/FORM. To see which form is currently the default for the print queue, enter SHOW QUEUE/FULL.

pa /PASSALL flag. Tells the print symbiont to ignore any formatting and to send the file to the printer with its format suppressed.
nd /NODELETE flag. Specifies that the temporary file created in TCPIP$LPD for an inbound print job will not be deleted after printing. By default, these temporary files are deleted after printing.
cr Not supported by TCP/IP Services.
sn Prevents the LPD server from inserting a line feed into the byte stream after the SETUP module and before the actual print file.

Including this sn symbol prevents LPD from inserting the line feed character on a per-queue basis, overriding the definition of the Setup-NoLF configuration option in the TCPIP$LPD.CONF file (described in Table 24-1).

p1-p8 Equivalent to the PRINT/PARAMETER qualifier on the DCL command line. You can specify up to eight optional parameters that are unique to the print symbiont. If the DECprint Supervisor software is running on the system, enter HELP PRINT_PARAMETER for information about the available parameters.

To make the printcap entries easier to read, use one symbol per line, placing a colon (:) at the start of each line and a colon and backslash (:\) at the end of the line to separate the symbols. The last printcap entry ends with a colon (:).

The following sample is an entry from the printcap database that identifies a local printer.


#
LOCAL1|local1:\
:lf=/SYS$SPECIFIC/TCPIP$LPD/LOCAL1.LOG:\
:lp=LOCAL1:\
:sd=/SYS$SPECIFIC/TCPIP$LPD/LOCAL1:\
:nd:

The following sample is a printcap entry that identifies a remote printer:


#
REMOTE1|remote1:\
:lf=/SYS$SPECIFIC/TCPIP$LPD/REMOTE1.LOG:\
:rp=REMOTE1:\
:rm=hermes:\
:sd=/SYS$SPECIFIC/TCPIP$LPD/:


Previous Next Contents Index