LP Print Service (Reference)
This chapter provides background information on the LP print service.
"How LP Administers Files and Schedules Local Print Requests"
"How the lpsched Daemon Tracks the Status of Print Requests"
Where to Find Printer Tasks
Printer Task | For More Information |
---|---|
Set up printers with Solaris Print Manager and the lp commands | |
Administer printers with the lp commands after they are setup | |
Manage character sets, filters, forms, and fonts | Chapter 6, Managing Character Sets, Filters, Forms, and Fonts (Tasks) |
Customize the LP print service |
The LP Print Service
The LP print service is a set of software utilities that allows users to print files while they continue to work. Originally, the print service was called the LP spooler. (LP stood for line printer, but its meaning now includes many other types of printers, such as laser printers. Spool is an acronym for system peripheral operation off-line.)
The print service consists of the LP print service software, any print filters you might provide, and the hardware (the printer, system, and network connections).
The Structure of the LP Print Service
This section describes the directory structure, files, logs, and commands of the LP print service.
LP Print Service Directories
The files of the LP print service are distributed among seven directories, as shown in the following table.
Table 8-1 Directories for the LP Print Service
Directory | Contents |
---|---|
/usr/bin | The LP print service user commands |
/etc/lp | A hierarchy of LP server configuration files |
/usr/share/lib | The terminfo database directory |
/usr/lib/print | The lp conversion scripts, in.lpd daemon and the printd daemon. The printd daemon transfers all pending jobs in the/var/spool/print directory once per minute. When there are no jobs remaining to transfer, it exits |
/usr/sbin | The LP print service administrative commands |
/usr/lib/lp | The LP daemons; directories for binary files and PostScript filters; and the model directory (which contains the standard printer interface program) |
/var/lp/logs | The logs for LP activities: lpsched.n - Messages from lpsched and requests.n - Information about completed print requests |
/var/spool/lp | The spooling directory where files are queued for printing |
/var/spool/print | The LP print service client-side request staging area |
LP Print Service Configuration Files
The scheduler stores configuration information in LP configuration files located in the /etc/lp directory, as described in the following table.
Caution - The configuration files listed in this table are private interfaces, and are subject to change in future releases. You should not build software that relies on these files being in their current locations or that relies on the data being in the format currently used.
Table 8-2 Contents of the /etc/lp Directory
File | Type | Description |
---|---|---|
classes | Directory | Files identifying classes provided by the lpadmin -c command. |
fd | Directory | Description of existing filters. |
filter.table | File | Print filter lookup table. |
forms | Directory | Location to put files for each form. Initially, this directory is empty. |
interfaces | Directory | Printer interface program files. |
logs | Link to /var/lp/logs | Log files of printing activities. |
model | Link to /usr/lib/lp/model | The standard printer interface program. |
printers | Directory | Directories for each local printer. Each directory contains configuration information and alert files for an individual printer. |
pwheels | Directory | Print wheel or cartridge files. |
These configuration files serve a similar function to the /etc/printcap file on lpd-based print servers.
Note - You can check the contents of the configuration files, but you should not edit them directly. Instead, use the lpadmin command to make configuration changes. Your changes will be written to the configuration files in the /etc/lp directory. The lpsched daemon administers and updates the configuration files.
The /etc/lp/printers directory has a subdirectory for each local printer known to the system. The following example shows the /etc/lp/printers subdirectories of printers sparc1 and luna.
$ ls -l /etc/lp/printers drwxrwxr-x 2 lp lp 512 Jan 23 23:53 luna drwxrwxr-x 2 lp lp 512 Jan 11 17:50 sparc1 |
The following table describes the files within each of the printer-specific directories.
File Name | Description |
---|---|
alert.sh | Shell to execute in response to alerts |
alert.vars | Alert variables |
configuration | Configuration file |
users.deny | List of users to whom printer access is denied |
comment | Printer description |
The configuration file for the printer luna, /etc/lp/printers/luna/configuration, would typically appear as follows:
Banner: on: Always Content types: PS Device: /dev/term/b Interface: /usr/lib/lp/model/standard Printer type: PS Modules: default |
The terminfo Database
The /usr/share/lib directory contains the terminfo database directory, which contains definitions for many types of terminals and printers. The LP print service uses information in the terminfo database to initialize a printer, to establish a selected page size, character pitch, line pitch, and character set, as well as to communicate the sequence of codes to a printer.
Each printer is identified in the terminfo database with a short name. For a description of the structure of the terminfo database, see "Printer Type". If necessary, you can add entries to the terminfo database, but it is a tedious and time-consuming process. For more information, see "Adding a terminfo Entry for an Unsupported Printer".
Daemons and LP Internal Files
The /usr/lib/lp directory contains daemons and files used by the LP print service, as described in the following table.
Table 8-3 Contents of the /usr/lib/lp Directory
File | Type | Description |
---|---|---|
bin | Directory | Contains files for generating printing alerts, slow filters, and queue management programs. |
lpsched | Daemon | Manages scheduling of LP print requests. |
model | Directory | Contains the standard printer interface program. |
postscript | Directory | Contains all PostScript filter programs provided by the LP print service. These filters come with descriptor files in the /etc/lp/fd directory that tell the LP print service the characteristics of the filters and where to locate them. |