1 ## The Super Quick Guide to LPRng Printcaps
2 ## Patrick Powell <papowell@lprng.com>
6 # This printcap provides a very simple way to configure your UNIX
7 # or Linux or MS or Apple LPRng printcap. There are several choices
8 # to make and some default printcap entries to use. These handle
9 # the majority of printing setups for most simple setups.
11 # Step 1: Send all jobs to LPD running on Local Host or Remote Host?
13 # If you want to send all jobs to the LPD spooler running on the localhost
14 # uncomment the following line. This is the normal case for most
15 # single user systems with attached printers or simple network printers.
17 #lp:force_localhost:client
18 #*:force_localhost:client
20 # lp - default print queue . If you do not want 'lp' to be the
21 # to be the default print queue, set it to the appropriate value
22 # * - wildcard matches all print queue names, and simply causes
23 # the supplied name to be used as the destination print queue.
24 # :force_localhost - connect to the server running on the localhost
25 # :client - for lpr,lpq,lprm, and lpc to use to get information
28 # If you want to send all jobs to the LPD spooler running on REMOTEHOST
29 # then uncomment the next line and change REMOTEHOST to the IP
30 # address or Fully Qualified Domain Name of REMOTEHOST. If you are
31 # using this entry then your printcap configuration is complete
32 # and you can skip the other steps.
34 #lp:force_localhost@:client:rm=REMOTEHOST
35 #*:force_localhost@:client:rm=REMOTEHOST
37 # lp - default print queue . If you do not want 'lp' to be the
38 # to be the default print queue, set it to the appropriate value
39 # * - wildcard matches all print queue names, and simply causes
40 # the supplied name to be used as the destination print queue.
41 # :force_localhost@ - do not connect to localhost, use :rm information
42 # :client - for lpr,lpq,lprm, and lpc to use to get information
43 # :rm=REMOTEHOST - the IP address or Fully Qualified Domain Name of
44 # REMOTEHOST. All jobs will be sent there
47 # Step 2: Default options?
49 # The printcap entry below sets defaults. Add any other default option
57 # .common - the period (.) causes LPRng to treat this as a 'information
58 # only entry. This idea was stolen^H^H^H^H^H^H borrowed from the Unix
59 # 'hidden' file convention, i.e. file names starting with a period
60 # are not displayed by 'ls' or matched by '*'
61 # :sd=/var/spool/lpd/%P
62 # Spool queue directory for temporary storage of print jobs. The
63 # %P will be expanded with the print queue name. Each print queue
64 # MUST have a different spool queue directory, and by using %P
66 # :sh - suppress banners or header pages
67 # :sf - suppress form feeds
68 # :mx=0 - maximum job size in K bytes (0 is unlimited)
69 # :mc=0 - maximum number of copies (0 is unlimited)
72 # Step 3: Define print queues
74 # A) printer on parallel port (i.e. - /dev/lpt0)
75 #lp:lp=DEVICE:tc=.common:server
77 # lp:tc=.common:server:lp=/dev/lpt0
79 # lp - name of the print queue
80 # :tc=.common - include the options in the .common printcap entry
81 # the 'tc' options will be put at the START of the printcap entry
82 # :server - marked as only for lpd server use
83 # :lp=/dev/lpt0 - open and write the print job to /dev/lpt0
86 # B) printer on serial port
87 # Use the :stty to set the speed, bits, and parity using 'stty(1)'
88 # options. Note: almost all printers use 8 bits, no parity.
89 #lp:tc=.common:server:lp=DEVICE:stty=STTY OPTIONS
91 # lp:tc=.common:server:lp=/dev/tty0:stty=19200 cs8 -parenb
92 # [Translation: lp, :tc, :server, :lp as for A) above.
93 # :stty= options used to configure serial port after
97 # C) printer on Network Print Server (i.e. - HP JetDirect)
98 # connecting via a TCP/IP socket. IPADDR is IP address or Fully Qualified
99 # Domain Name of the print server, PORT is the TCP/IP port.
101 # HP JetDirect uses port 9100 by default.
103 # Warning: check the Network Print Server documentation for correct
104 # port number. Most non-HP Network Print Servers and non-HP printers
105 # do not use port 9100.
107 #lp:tc=.common:server:lp=IPADDR%PORT
109 # lp:tc=.common:server:lp=10.0.0.2%9100
110 # [Translation: lp, :tc, :server as for A) above.
111 # lp=10.0.0.2%9100 - open a connection to 10.0.0.2, port 9100
112 # and write the print job to this port.
115 # D) printer on Network Print Server (i.e. - HP JetDirect or LPD server)
116 # connecting via the LPD print protocol. QUEUE is the name of the
117 # print queue and IPADDR is the IP address or Fully Qualified Domain
118 # Name of the print server.
120 # Warning: check the Network Print Server documentation for correct
121 # QUEUE name. The 'lp' queue is used on the HP JetDirect as the
122 # default print queue. If there are multiple printer ports on the
123 # device then the QUEUE name is used to select the port.
125 # Warning: Using this protocol with JetDirect units will almost always
126 # cause a 'banner page' to be generated by the JetDirect unit.
127 # Check the HP documentation on how to disable this most annoying feature.
128 # Usually you simply telnet to the JetDirect and then use the
129 # simple configuration menu presented when you first make connection.
131 #lp:tc=.common:server:lp=QUEUE@IPADDR
134 # lp:tc=.common:server:lp=lp@10.0.0.2
135 # [Translation: lp, :tc, :server as for A) above.
136 # lp=lp@10.0.0.2 - open a connection to 10.0.0.2, port 515,
137 # and use the RFC1179 (LPD) protocol to transfer the job
138 # to the QUEUE print queue.
141 # Step 4: Format Conversion (Filter) Required?
143 # You may discover that your printer does not support PostScript or
144 # requires a special initialization to be done. This is handled
145 # by a filter program. The 'ifhp' filter program is supplied with
146 # LPRng and supports a very wide number of printers. If you need
147 # to have a filter, then add the following lines to the printcap
150 # :filter=PATH_TO_IFHP_FILTER
153 # Note: the LPRng :filter= option replaces the legacy BSD lpd options
154 # :if, :vf, ... options that specify filters for 'f' format, 'v' format,
155 # and so forth (yes, yes, :if is for 'f' format, don't ask).
156 # The :filter option specifies a default filter for all job formats.
157 # Most modern filters such as IFHP, Magikfilter, and RedHat print
158 # filters are smart enough to determine the job format and perform
159 # the appropriate conversions.
163 # lp:tc=.common:server:lp=/dev/lpt0
164 # :filter=/usr/libexec/filters/ifhp
165 # :ifhp=model=hp4simx
167 # lp:tc=.common:server:lp=10.0.0.2%9100
168 # :filter=/usr/libexec/filters/ifhp
169 # :ifhp=model=hp4simx
171 # lp:tc=.common:server:lp=lp@10.0.0.2
172 # :filter=/usr/libexec/filters/ifhp
173 # :ifhp=model=hp4simx
176 # For almost all simple configurations you will only need to
177 # supply the model of printer that you have attached. See the
178 # /etc/ifhp.conf file for a complete listing of supported models.
179 # The default model is for an HP Laserjet 4 SiMx, which supports
180 # PostScript, PCL, and PJL.
184 # Your model of printer normally provides status and error
185 # reporting over a TCP/IP link
187 # You are using lp=IPADDR%PORT to connect to the printer
189 # The IFHP filter will normally expect to have status information
190 # returned by the printer to tell it that the printer is in working
191 # condition. This will have a small but significant overhead
192 # on job throughput, but you will also get error information.
195 # If the printer SHOULD return status but CANNOT due to either
196 # the printer hardware configuration or it is on a unidirectional
197 # and not bidirectional parallel printer port, then you must use
199 # to tell the IFHP filter not to expect status information.
202 # lp:tc=.common:server:lp=10.0.0.2%9100
203 # :filter=/usr/libexec/filters/ifhp
204 # :ifhp=model=hp4simx,status@
206 # Step 5: Queue creation and LPD restart
207 # Run the following commands to create your spool queues and
208 # then tell the LPD server that it should use them: