Skip Navigation Links | |
Exit Print View | |
System Administration Guide: Printing Oracle Solaris 10 8/11 Information Library |
1. Introduction to Printing in the Oracle Solaris Operating System
Privilege Requirements for Using Print Commands
Overview of the Oracle Solaris Printing Architecture
Available Printing Tools and Services
Implementation of the Open Standard Print API
Definition of a Print Server and a Print Client
Description of the Internet Printing Protocol
Description of the RFC-1179 Printing Protocol
IPP Compared to the RFC-1179 Protocol
Description of the SMB Protocol
Using Printing Protocols in the Oracle Solaris Release
Determining Which Printing Protocol to Use
Selecting the Client-To-Server Network Printing Protocol
Description of Oracle Solaris Print Manager
Description of the LP Print Service
The LP Print Client-Server Process
Print Client Process Used by the LP Print Service
How the LP Print Service Administers Files and Schedules Local Print Requests
2. Planning for Printing (Tasks)
3. Setting Up Network Printing Services (Tasks)
4. Setting Up and Administering Printers by Using Oracle Solaris Print Manager (Tasks)
5. Setting Up Printers by Using LP Print Commands (Tasks)
6. Administering Printers by Using LP Print Commands (Tasks)
7. Customizing LP Printing Services and Printers (Tasks)
8. Administering the LP Print Scheduler and Managing Print Requests (Tasks)
9. Administering Printers on a Network (Tasks)
10. Administering Character Sets, Filters, Forms, and Fonts (Tasks)
11. Administering Printers by Using the PPD File Management Utility (Tasks)
12. Printing in the Oracle Solaris Operating System (Reference)
13. Troubleshooting Printing Problems in the Oracle Solaris OS (Tasks)
The printing architecture in the Oracle Solaris OS uses network printing protocols to communicate with print services in the following ways:
Client-to-server communications
Server-to-printer communications
The Oracle Solaris software provides applications, toolkits, printing commands, and an application programming interface that interacts with print services. This API is called the PAPI. The PAPI consists of a front-end API implementation that dynamically loads back end print service or protocol modules that communicate directly with print services. These print services contain the print job or print queue that is being acted upon. Client-to-server communications include the RFC-1179 and IPP protocols, as well as support for communicating with a local LP print service. For server-to-printer communications, the network printing protocol support enables the print service to transmit print jobs directly to network-attached printers.
Server-to-printer communications for the LP print service and Oracle Solaris Print Manager include support for the following network protocols:
Raw Transmission Control Protocol (TCP) socket
RFC-1179
IPP
SMB
The print system uses two over-the-wire protocols for sending print requests from a print client to the print server. The following table describes the printing protocols that can be used for printing in the Oracle Solaris OS.
Table 1-1 Supported Printing Protocols
|
Applications, toolkits, and printing commands select the protocol to use for client-to-server communications, based on the value of the printer-uri-supported attribute that is found in the printers.conf database entry for the specified print queue. This value is automatically generated and populated when access to a remote print queue is configured by using the lpadmin command or when an application uses the interface that is being referenced to perform an action or actions.
For example, when printing a document while using Mozilla, the path that is followed to gain access to the printer is:
Mozilla -> lp -> PAPI
For more information, see the printers.conf(4) man page.
The lpadmin command generates printer-uri-supported values using the following format:
{ipp|lpd}://server/printers/queue
To determine which URI to use in the printers.conf database, the lpadmin command probes the remote print service. If the remote print service supports IPP, this protocol is preferred over the BSD protocol. However, you can override automatic protocol selection by specifying the -soption with the lpadmin command, then supplying a different URI. For more information, see the Printer URI Formats That Are Supported.
The LP print subsystem uses the BSD print protocol, also referred to as the RFC-1179 protocol, and raw Transmission Control Protocol (TCP), the basic communication language or protocol of the Internet, to communicate with the printer. If you are setting up a printer that includes printer vendor documentation, information about which protocol to use is provided. The TCP protocol is the protocol that is most often used for printing on the network.
The following table describes supported printer URI formats.
Table 1-2 Supported URI Formats
|
Network-attached printers often support more than one method of communicating with a print service. The most common method of communicating with the print service is through a raw TCP connection to a well-known port on the device. Other methods of communication include the RFC-1179 and IPP network protocols. You can select the server-to-printer communication protocol when adding a new print queue in one of following ways:
By using the lpadmin command with the following options, and as shown here:
# lpadmin -o protocol={bsd|tcp} -o dest=printer:queue-or-port -m netstandard{_foomatic}
This method for communicating with the print service was introduced in the Solaris 2.6 OS and is available in all subsequent Oracle Solaris releases.
The second method is to use the lpadmin command with the -d option to supply a device and the -m option to specify a uri.
This method for communicating with the print service is intended to replace the previous method.
When determining which protocol to use for server-to-printer communication, consult the vendor printer documentation for more specific information. Documentation includes information such as TCP port numbers, RFC-1179 printer names, and the IPP printer URIs that are supported by the device. In most instances, a raw TCP socket communication is likely to provide the most reliable results.
Also, note that because of the differences between printing services on UNIX and Windows platforms, Windows hosted printers should be configured as network-attached printers and administered as such. These types of printers require the creation of a print queue if you are using them on a Oracle Solaris system. These printers might also use the SMB protocol for server-to-printer communication. For more information about the SMB protocol, see Description of the SMB Protocol.
For more information about setting up printers and configuring print queues, see Setting Up Printers by Using Oracle Solaris Print Manager (Task Map) and Setting Up Printers by Using LP Print Commands (Task Map).