HP OpenVMS Systems Documentation

Content starts here

Compaq TCP/IP Services for OpenVMS

Previous Contents Index

21.4.5 Occluded Mounting

Occluded mounting allows you to mount a file system onto a client mount point that is higher or lower in the directory structure than an existing, active mount. This is different from overmounting because dismounting does not occur. Instead, the client occludes (hides from view) the subdirectories that are added to or dropped from the original mount specification when you perform a directory listing.

Specify the /FORCE qualifier with an occluded mount.

In the following example, the mount point specification was backed up one subdirectory from the previous one. If you enter the SHOW MOUNT command, both mounts are visible. However, if you enter DIRECTORY for DNFS2:[USERS.SPARROW], [.MNT] is no longer visible. To make this subdirectory visible again, issue the DISMOUNT command to dismount DNFS2:[USERS.SPARROW].




-TCPIP-I-OCCLUDED, previous contents of _DNFS2:[USERS.SPARROW] occluded

The following example shows a mount of UNIX directory /usr to the OpenVMS device and directory DNFS3:[0,0].

On the UNIX host, the directory listing looks like this:

unix% ls
grebe wings pratincole

To do the mount, enter:

$ TCPIP MOUNT DNFS3: /HOST="unix" /PATH="/usr"

To check that the mount succeeded, enter:


On the OpenVMS host, the directory listing looks like this:


Directory DNFS3:[000,000]


Total of 3 files.

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 22
Setting Up and Managing the LPR/LPD Print Service

The LPR/LPD service 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:

22.1 Key Concepts

The LPR/LPD service 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.

See the DIGITAL TCP/IP Services for OpenVMS User's Guide for general information about using these commands.

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 22.3 describes how to use the printer setup program to configure printers.

22.2 Configuring LPR/LPD

If you use the configuration procedure to configure LPR/LPD, the procedure completes the following tasks:

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

After you start the service, the logical names listed in Table 22-1 are defined.

Table 22-1 LPD Logical Names
Logical Name Description
TCPIP$LPD_PRINTCAP Specifies the database that maps queues and makes queues available.
TCPIP$LPD_SPOOL Specifies the main spooling directory.
TCPIP$LPD_LOGFILE Specifies the name of the log file for the TCPIP$LPD_QUEUE, which precedes all inbound jobs.
TCPIP$LPD_STREAM_PASSALL This version of TCP/IP Services adds extra line feed characters to files with embedded carriage control. This logical preserves the behavior of previous versions of TCP/IP Services and is useful when your users print from Compaq PATHWORKS Client software.
TCPIP$LPD_KEEPALIVE The KEEPALIVE timer is used to periodically check the other end of a link that appears to be idle. The purpose of the time is to detect when a remote host has failed or has been brought down, or when the logical connection has been broken. Set this logical using the following command:

This logical name is not used by the server; it is used by LPD. If you are changing this logical name, there is no need to restart TCP/IP Services. If this logical is defined, the KEEPALIVE function is enabled.

By default, the KEEPALIVE timer is disabled. Broken connections will be detected only if the relevant application sends data.

TCPIP$LPD_PROBETIME The PROBE timer specifies:
  1. 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 TCPIP$LPD_KEEPALIVE logical is set.
  2. The length of time (in seconds) allowed to pass before TCP/IP Services checks an idle connection. This requires that the TCPIP$LPD_KEEPALIVE logical be set.

You control the PROBE timer using the following command:


In this command, x specifies the number of seconds to wait before timing out the connection.

The value of the PROBE timer must always be less than or equal to the value of the DROP timer. The default value for the PROBE timer is 75 seconds.

TCPIP$LPD_DROPTIME The DROP timer indicates how long (in seconds) that a connection should be maintained (after repeated timeouts) before closing the connection. The DROP timer is in effect only after the link has been established, and it takes effect only if the TCPIP$KEEPALIVE logical is set.

You control the DROP timer using the following command:


In this command, x specifies the number of seconds to maintain the connection before closing it.

The default value for the DROP timer is 300 seconds.

TCPIP$LPD_1ST_VFC_PREFIX_SPECIAL LPD can insert an extra line feed character at the beginning of print files. Set this logical to suppress this action.
TCPIP$LPD_VMS_FLAGPAGES Enables the OpenVMS flag page print options, as described in Section 22.7.
TCPIP$LPD_PS_EXT Control Compaq PrintServer extension support. By default, PrintServer extensions are supported by LPD. To disable PrintServer extension support on the system, enter the following command:

To enable PostScript extensions, specify LPS as the value of this logical name.

For more information about configuring PrintServer extension support for a printer, see Section 22.3.

TCPIP$LPD_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 the description of the TCPIP$LPD_RCV logical for more information.
TCPIP$LPD_RCV 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.

TCPIP$LPD_DEBUG and TCPIP$LPD_RCV are bit-mapped values. The low-order three bits turn on all diagnostics generated by either the sender or the receiver.

To define these logical names, set the following bits in the value:

  • Bit 0 indicates minimal debugging information.
  • Bit 1 indicates an intermediate amount of debugging information.
  • Bit 2 indicates the full amount of debuggging information available.
  • Bit 3 logs the actual data sent and received over the network.

If you set the fourth bit, the LPD symbiont logs each buffer that it sends over the TCP/IP link, and the LPD receiver logs each buffer that it receives from the TCP/IP link. The log files let you see exactly what the LPD is sending (for outbound jobs) and receiving (for inbound jobs).

To set the fourth bit, enter:



For more information about using these logical to solve printing problems, see Section 22.8.

22.2.1 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 logical names 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.

22.3 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

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 22-2 describes the LPRSETUP commands.

Table 22-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:


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
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
 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] ? :

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


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

22.3.1 Printer Characteristics

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

Table 22-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:

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


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

:rp=REMOTE1 :\
:rm=hermes :\
:sd=/SYS$SPECIFIC/TCPIP$LPD/ : Setting Up Print Spool Directories

Each printer must have its own spool directory located under the SYS$SPECIFIC:[TCPIP$LPD] directory. The spool directory acts as a printer's spooling queue; it contains the files that are queued for printing on that particular printer. A printer spool directory should have the same name as the printer reference name and must be located on the machine to which the printer is attached. Specify the directory using a UNIX-style path name.

Each printer should specify a spool directory even if the printer is connected to another machine or is on another network. You specify a spooling directory in the printcap database with the sd symbol. For example:


Previous Next Contents Index