Adding a Remote BSD Printer

The lpsched daemon must be shut down during printer installation and reinvoked afterward. It is recommended that you test the new printer after installation: banner Testing of newprinter | lp −d newprinter

10.3.2 Adding a New Remote Printer

Both printer spooling subsystems allow remote printing. A destination printer could be a part of another remote UNIX system or an individual network printer that supports UNIX−style printing basically the TCPIP and the corresponding type of the printing subsystem. UNIX does not differentiate between remote and network printers, it simply treats a network printer as a single printer on a remote system. This is a logical approach because a network printer is identified within the network in the same way as any other remote UNIX system. Remote printing corresponds to the serverclient model, where a client is a UNIX system in which the remote printer is defined, and where users use this printer; this is the origin of a printing request. A client requests a printing service, which is provided at another remote system, known as a print server may not be a UNIX system.

10.3.2.1 Adding a Remote BSD Printer

The BSD printing subsystem defines remote printers, as any other printers, through its printer capability database in the etcprintcap file. A remote printer requires a printcap entry slightly different from that of a local printer. It is important to understand that: A number of printer characteristics are determined on the server side, where the printer is local; the client has no influence on these predefined printer characteristics, and corresponding printcap entries are meaningless and automatically outposted. • New printcap entries, specific for remote printing, were introduced and they must be used. • The remote destination has to be known to the system, as does the way to reach the destination. In other words, the system must be properly connected to the network. • The print server has to support BSD printing. • In the already presented section of the etcprintcap file, several printcap entries refer to the remote printers. We will analyze one of them: 16|psrisc| rs01ch|ps|postscript|ps printer:\ :lp=:rm=rs01ch:sd=usrspoollpdrisc:lf=usradmlpd−errs:\ :rp=ps: The name of the remote printer is psrisc Postscript printer on the RS6000 system; alternative names are possible. The empty :lp=: field shows that this entry describes a remote printer remember, for a local printer this field specifies a corresponding special device file. • The field :rm=rs01ch: indicates the destination system for remote printing on a remote machine. It can be specified with the valid DNS name of the system in this case, rs01ch or its IP address DNS and IP addressing are discussed in Chapters 15 and 16. • The field :rp=ps: holds the name of the target remote printer on the remote system in this • 242 These three fields are mandatory for the proper definition of a remote printer. It is a good idea to define several more fields that strictly define printing issues on the client side, such as: The field :sd=usrspoollpdrisc: specifies the spooling directory in this case usrspoollpdrisc. It is recommended that you use the printer name as a spooling subdirectory. • The field :lf=usradmlpd−errs: specifies the error log file. A single log file may be defined for multiple printers. • The entry does not contain any specific details about the remote printer other than its name. The needed information is specified in the etcprintcap file on the remote system if the remote system is a BSD UNIX system at all, or in another appropriate way. On the printer server side, very little administration is required. Assuming the selected remote printer already exists as a local printer there, the serversetcprintcap file remains unmodified. However, to allow users from a client system to access and print on the print server, the client system itself must be specified as a trusted system; the hostname of the client system must be included in the servers etchosts.equiv file this is discussed in Chapter 19, or in the servers etchosts.lpd file the structure of this file is the same as the etchosts.equiv. Otherwise, remote print requests from the client system will be refused.

10.3.2.2 Adding a Remote Linux Printer