<?Pub UDT _bookmark _target?><?Pub UDT __target_1 _target?><?Pub UDT registeredtm trademark?><?Pub EntList bull rArr sect?><?Pub CX solbook(book(title()bookinfo()chapter()chapter()?><chapter id="tsprint-34397"><?Pub Tag atict:info tracking="on" ref="1"?><?Pub Tag
atict:user user="jonj" fullname="Juanita Heieck"?><?Pub Tag atict:user
user="jh118764" fullname="Juanita Heieck"?><?Pub Tag atict:user user="wsm"
fullname=""?><title>Troubleshooting Printing Problems (Tasks)</title><highlights><para>This chapter explains how to troubleshoot printing problems that might
occur when you set up or maintain printing services.</para><itemizedlist><para>This is a list of the information in this chapter:</para><listitem><para><indexterm><primary><filename>/devices</filename> not created</primary><secondary>how to troubleshoot </secondary></indexterm><indexterm><primary>missing <filename>/devices</filename> entry for line printer</primary><secondary>how to troubleshoot</secondary></indexterm><indexterm><primary>how to troubleshoot missing line printer <filename>/devices</filename> entry</primary></indexterm><olink targetptr="gekzm" remap="internal">Tips on Troubleshooting Printer Setup Problems</olink></para>
</listitem><listitem><para><olink targetptr="tsprint-78101" remap="internal">Tips on Troubleshooting Printing
Problems</olink></para>
</listitem><listitem><para><olink targetptr="tsprint-38200" remap="internal">Troubleshooting Printing
Problems</olink></para>
</listitem>
</itemizedlist><para>For overview information about printing, see <olink targetptr="printintro-1" remap="internal">Chapter&nbsp;1, Introduction to Printing in the Solaris
Operating System</olink>.</para>
</highlights><sect1 id="gekzm"><title>Tips on Troubleshooting Printer Setup Problems</title><para>Sometimes, when setting up a printer, you might need to locate printer
device identification information. See <olink targetptr="gekxg" remap="internal">Locating Information
About Parallel and USB-Connected Print Devices</olink> for more information.</para><sect2 id="gekxg"><title>Locating Information About Parallel and USB-Connected
Print Devices</title><para>Information about parallel and USB-connected printers is located in
the <filename>/dev/printers</filename> directory.</para><para>To query printers for IEEE1284 device identification information, type:</para><screen># <userinput>/usr/lib/lp/bin/printer-info -a /dev/printers/*</userinput></screen><para>For example:</para><screen># /usr/lib/lp/bin/printer-info -a /dev/printers/*
 /dev/printers/0:
         Manufacturer: Hewlett-Packard
         Model:        hp color LaserJet 4650
         Description:  Hewlett-Packard color LaserJet 4650
         Class:        PRINTER
         Command set:
                 cmd[0]: PJL
                 cmd[1]: MLC
                 cmd[2]: BIDI-ECP
                 cmd[3]: PCLXL
                 cmd[4]: PCL
                 cmd[5]: PDF
                 cmd[6]: PJL
                 cmd[7]: MIME
                 cmd[8]: POSTSCRIPT</screen><para>Note that when you add a device with Solaris Print Manager, the same
program is used to detect and provide information about the printer make and
model in the <literal>Add Attached Printer</literal> dialog box. See <olink targetdoc="group-refman" targetptr="printmgr-1m" remap="external"><citerefentry><refentrytitle>printmgr</refentrytitle><manvolnum>1M</manvolnum></citerefentry></olink> for more
information.</para>
</sect2>
</sect1><sect1 id="tsprint-78101"><title>Tips on Troubleshooting Printing Problems</title><para><indexterm id="tsprint-ix5492"><primary>troubleshooting</primary><secondary>printing problems</secondary></indexterm><indexterm id="tsprint-ixxiv"><primary>printing problems</primary><secondary>troubleshooting</secondary></indexterm><indexterm id="ggfiz"><primary>troubleshooting printing problems</primary><secondary>tips</secondary></indexterm><indexterm id="ggfhm"><primary>tips on troubleshooting</primary><secondary>printing problems</secondary></indexterm>Sometimes
after setting up a printer, you find that nothing prints. Or, you might get
a little farther in the process: something prints, but it is not what you
expect, the output is incorrect or illegible. </para><itemizedlist><para>Then, when you get past these problems, other problems might occur,
such as:</para><listitem><para><command>lp</command> commands hanging</para>
</listitem><listitem><para>Printers becoming idle</para>
</listitem><listitem><para>Users getting conflicting messages</para>
</listitem>
</itemizedlist><note><para>Although many of the suggestions in this chapter are relevant
to parallel printers, they are geared toward the more common serial printers.</para>
</note><sect2 id="tsprint-10970"><title>Troubleshooting No Output (Nothing Prints)</title><itemizedlist><para>When nothing prints, there are three general areas to check:</para><listitem><para>The printer hardware</para>
</listitem><listitem><para>The network</para>
</listitem><listitem><para>The LP print service</para>
</listitem>
</itemizedlist><para>If you get a banner page, but nothing else, this is a special case of
incorrect output. See <olink targetptr="tsprint-75415" remap="internal">Troubleshooting Incorrect
Output</olink>.</para><sect3 id="tsprint-70699"><title>Check the Hardware</title><para>The hardware is the first area to check. As obvious as it sounds, you
should make sure that the printer is plugged in and turned on. In addition,
you should refer to the manufacturer's documentation for information about
hardware settings. Some computers use hardware switches that change the characteristics
of a printer port.</para><para>The printer hardware includes the printer, the cable that connects it
to the computer, and the ports into which the cable plugs at each end. As
a general approach, you should work your way from the printer to the computer.
Check the printer. Check where the cable connects to the printer. Check the
cable. Check where the cable connects to the computer.</para>
</sect3><sect3 id="tsprint-24407"><title>Check the Network</title><para>Problems are more common with remote print requests that are going from
a print client to a print server. You should make sure that network access
between the print server and print clients is enabled.</para><para>If the network is running the Network Information Service Plus (NIS+),
see  for instructions to enable access between systems.
If the network is not running the Network Information Service (NIS) or NIS+,
before you set up print servers and print clients, include the Internet address
and system name for each client system in the <filename>/etc/hosts</filename> file
on the print server. Also, the IP address and system name for the print server
must be included in the <filename>/etc/hosts</filename> file of each print
client system.</para>
</sect3><sect3 id="tsprint-25533"><title>Check the LP Print Service</title><para><indexterm id="tsprint-ix5494"><primary>LP print service</primary><secondary>troubleshooting</secondary></indexterm>For printing to work, the
LP scheduler must be running on the print server. If it
is not running, you need to start it using the following command: </para><screen># <userinput>svcadm enable application/print/server</userinput></screen><para>In addition to the scheduler running, a printer must be enabled and
accepting requests before it will produce any output. If the LP print service
is not accepting requests for a printer, the submitted print requests are
rejected. Usually, in that instance, the user receives a warning message after
submitting a print request. If the LP print service is not enabled for a printer,
print requests remain queued on the system until the printer is enabled.</para><itemizedlist><para>In general, you should analyze a printing problem as follows:</para><listitem><para>Follow the path of the print request step-by-step.</para>
</listitem><listitem><para>Examine the status of the LP print service at each step.</para><itemizedlist><listitem><para>Is the configuration correct?</para>
</listitem><listitem><para>Is the printer accepting requests?</para>
</listitem><listitem><para>Is the printer enabled to process requests?</para>
</listitem>
</itemizedlist>
</listitem><listitem><para><indexterm id="tsprint-ix5497"><primary>log files</primary><secondary>for LP print service</secondary></indexterm><indexterm id="tsprint-ix5498"><primary>LP print service</primary><secondary>log files</secondary></indexterm>If the request is hanging on transmission, set up <literal>lpr.debug</literal> in <filename>syslog.conf</filename> to display the flow.  See <olink targetptr="gekzy" remap="internal">Troubleshooting
Printing Problems</olink>.</para>
</listitem><listitem><para><indexterm id="tsprint-ix5500"><primary sortas="var/lp/logs/lpsched file"><filename>/var/lp/logs/lpsched</filename> file</primary></indexterm>If the request is hanging locally, examine the <filename>lpsched</filename> log
(<filename>/var/lp/logs/lpsched</filename>). </para>
</listitem><listitem><para>If the request is hanging locally, have notification of the
printer device errors (faults) mailed to you, and re-enable the printer.</para>
</listitem>
</itemizedlist><para>The procedures found in <olink targetptr="tsprint-38200" remap="internal">Troubleshooting
Printing Problems</olink> use this strategy to help you troubleshoot various
problems with the LP print service.</para>
</sect3>
</sect2><sect2 id="gekzy"><title>Troubleshooting Printing Problems</title><para>Enabling <command>lpr.debug</command> in the <filename>/etc/syslog.conf</filename> file
provides a variety of useful information. Because a large volume of information
is provided, the preferred method is to enable this feature only while debugging
printing problems.</para><para>For more information, see <olink targetptr="gekzo" remap="internal">How to Debug Printing
Problems</olink>.</para>
</sect2><sect2 id="tsprint-75415"><title>Troubleshooting Incorrect Output</title><para>If the printer and the print service software are not configured correctly,
the printer might print, but it might provide output that is not what you
expect.</para><sect3 id="tsprint-1"><title>Check the Printer Type and File Content Type</title><indexterm id="tsprint-ix5502"><primary>file content type</primary><secondary>troubleshooting incorrect output</secondary>
</indexterm><indexterm id="tsprint-ix5503"><primary>banner pages</primary><secondary>troubleshooting incorrect output</secondary>
</indexterm><para>If you used the wrong printer type when you set up the printer with
the LP print service, inappropriate printer control characters can be sent
to the printer. The results are unpredictable: nothing might print, the output
might be illegible, or the output might be printed in the wrong character
set or font.</para><para>If you specified an incorrect file content type, the banner page might
print, but that is all. The file content types specified for a printer indicate
the types of files the printer can print directly, without filtering. When
a user sends a file to the printer, the file is sent directly to the printer
without any attempt to filter it. The problem occurs if the printer cannot
handle the file content type.</para><para>When setting up print clients, you increase the chance for a mistake
because the file content types must be correct on both the print server and
the print client. If you set up the print client as recommended with <literal>any</literal> as the file content type, files are sent directly to the print
server and the print server determines the need for filtering. Therefore,
the file content types have to be specified correctly only on the server.</para><para>You can specify a file content on the print client to off-load filtering
from the server to the client, but the content type must be supported on the
print server. </para>
</sect3><sect3 id="tsprint-2"><title>Check the <command>stty</command> Settings</title><indexterm id="tsprint-ix5504"><primary>stty settings</primary><secondary>troubleshooting</secondary>
</indexterm><para>Many formatting problems can result when the default <command>stty</command> (standard
terminal) settings do not match the settings required by the printer. The
following sections describe what happens when some of the settings are incorrect.</para><sect4 id="tsprint-60536"><title>Wrong Baud Settings</title><para><indexterm id="tsprint-ix5505"><primary>baud settings</primary></indexterm><indexterm id="tsprint-ix5506"><primary>printers</primary><secondary>baud settings</secondary></indexterm>When the baud setting of the
computer does not match the baud setting of the printer, usually you get some
output, but it does not look like the file you submitted for printing. Random
characters are displayed, with an unusual mixture of special characters and
undesirable spacing. The default for the LP print service is 9600 baud.   </para><note><para>If a printer is connected by a parallel port, the baud setting
is irrelevant.</para>
</note>
</sect4><sect4 id="tsprint-3"><title>Wrong Parity Setting</title><para><indexterm id="tsprint-ix5508"><primary>parity bit</primary><secondary>printers</secondary></indexterm><indexterm id="tsprint-ix5509"><primary>printers</primary><secondary>parity bit</secondary></indexterm>Some printers use a parity bit
to ensure that data received for printing has not been garbled during transmission.
The parity bit setting for the computer and the printer must match. If they
do not match, some characters either will not be printed at all, or will be
replaced by other characters. In this case, the output looks approximately
correct. The word spacing is all right and many letters are in their correct
place. The LP print service does not set the parity bit by default.   </para>
</sect4><sect4 id="tsprint-4"><title>Wrong Tab Settings</title><para><indexterm id="tsprint-ix5511"><primary>tab settings</primary></indexterm><indexterm id="tsprint-ix5512"><primary>printers</primary><secondary>settings</secondary><tertiary>tab</tertiary></indexterm>If the file contains tabs, but the printer
expects no tabs, the printed output might contain the complete contents of
the file, but the text might be jammed against the right margin. Also, if
the tab settings for the printer are incorrect, the text might not have a
left margin, it might run together, it might be concentrated to a portion
of the page, or it might be incorrectly double-spaced. The default is for
tabs to be set every eight spaces.  </para>
</sect4><sect4 id="tsprint-5"><title>Wrong Return Setting</title><indexterm id="tsprint-ix5513"><primary>return settings, printers</primary>
</indexterm><para>If the output is double-spaced, but it should be single-spaced, either
the tab settings for the printer are incorrect or the printer is adding a
line feed after each return. The LP print service adds a return before each
line feed, so the combination causes two line feeds.</para><para>If the print zigzags down the page, the <literal>stty</literal> option <literal>onlcr</literal> that sends a return before every line feed is not set. The <literal>stty=onlcr</literal> option is set by default, but you might have cleared
it while trying to solve other printing problems.</para>
</sect4>
</sect3>
</sect2><sect2 id="tsprint-22552"><title>Troubleshooting Hung <command>lp</command> Commands</title><indexterm id="tsprint-ix5515"><primary>LP print service</primary><secondary>troubleshooting</secondary>
</indexterm><indexterm id="tsprint-ix5516"><primary>troubleshooting hung <command>lp</command> commands</primary>
</indexterm><para>If you type any of the <command>lp</command> commands (such as <command>lpsystem</command>, <command>lpadmin</command>, or <command>lpstat</command>) and
nothing happens (no error message, status information, or prompt is displayed),
chances are something is wrong with the LP scheduler. Such a problem can usually
be resolved by stopping and restarting the LP scheduler. See <olink targetptr="printadmin-22789" remap="internal">How to Stop the Print Scheduler</olink> for instructions.</para>
</sect2><sect2 id="tsprint-23911"><title>Troubleshooting Idle (Hung) Printers</title><indexterm id="tsprint-ix5518"><primary>printers</primary><secondary>troubleshooting</secondary><tertiary>hung printers</tertiary>
</indexterm><para>You might find a printer that is idle, even though it has print requests
queued to it. </para><itemizedlist><para>A printer might seem idle when it should not be for one of the following
reasons:</para><listitem><para>The current print request is being filtered.</para>
</listitem><listitem><para>The printer has a fault.</para>
</listitem><listitem><para>Networking problems might be interrupting the printing process.</para>
</listitem>
</itemizedlist><sect3 id="tsprint-6"><title>Check the Print Filters</title><para>Slow print filters run in the background to avoid tying up the printer.
A print request that requires filtering will not print until it has been filtered.</para>
</sect3><sect3 id="tsprint-7"><title>Check Printer Faults</title><para>When the LP print service detects a fault, printing resumes automatically,
but not immediately. The LP print service waits about five minutes before
trying again, and continues trying until a request is printed successfully.
You can force a retry immediately by enabling the printer.</para>
</sect3><sect3 id="tsprint-8"><title>Check Network Problems</title><itemizedlist><para>When printing files over a network, you might encounter the following
types of problems:</para><listitem><para>Requests sent to print servers might back up in the client
system (local) queue.</para>
</listitem><listitem><para>Requests sent to print servers might back up in the print
server (remote) queue.</para>
</listitem>
</itemizedlist><sect4 id="tsprint-9"><title>Print Requests Backed Up in the Local Queue</title><itemizedlist><para>Print requests submitted to a print server might back up in the client
system queue for the following reasons:</para><listitem><para>The print server is down.</para>
</listitem><listitem><para>The printer is disabled on the print server.</para>
</listitem><listitem><para>The network between the print client and print server is down.</para>
</listitem><listitem><para>Underlying network software was not set up properly.</para>
</listitem>
</itemizedlist><para>While you are tracking the source of the problem, you should stop new
requests from being added to the queue. See <olink targetptr="printadmin-73033" remap="internal">How
to Accept or Reject Print Requests for a Printer</olink> for more information.</para>
</sect4><sect4 id="tsprint-10"><title>Print Requests Backed Up in the Remote Queue</title><para>If print requests back up in the print server queue, the printer has
probably been disabled. When a printer is accepting requests, but not processing
them, the requests are queued to print. Unless there is a further problem,
once the printer is enabled, the print requests in the queue should print.</para>
</sect4>
</sect3>
</sect2><sect2 id="tsprint-11"><title>Troubleshooting Conflicting Status Messages</title><indexterm id="tsprint-ix5521"><primary>printers</primary><secondary>troubleshooting</secondary><tertiary>conflicting status messages</tertiary>
</indexterm><para>A user might enter a print request and be notified that the client system
has accepted it, then receive mail from the print server that the print request
has been rejected. </para><itemizedlist><para>These conflicting messages might occur for the following reasons:</para><listitem><para>The print client might be accepting requests, while the print
server is rejecting requests.</para>
</listitem><listitem><para>The definition of the printer on the print client might not
match the definition of that printer on the print server. More specifically,
the definitions of the print job components, like filters, character sets,
print wheels, or forms are not the same on the client and server systems.</para>
</listitem>
</itemizedlist><para>You should check that identical definitions of these job components
are registered on both the print clients and print servers so that local users
can access printers on the print servers.</para>
</sect2>
</sect1><sect1 id="tsprint-38200"><title>Troubleshooting Printing Problems</title><itemizedlist><para>This section contains step-by-step instructions that explain:</para><listitem><para>How to troubleshoot no output</para>
</listitem><listitem><para>How to troubleshoot incorrect output</para>
</listitem><listitem><para>How to unhang the <command>lp</command> commands</para>
</listitem><listitem><para>How to troubleshoot an idle (hung) printer</para>
</listitem><listitem><para>How to resolve conflicting status messages</para>
</listitem>
</itemizedlist><sect2 id="tsprint-33410"><title>Troubleshooting No Printer Output</title><itemizedlist><para>This task includes the following troubleshooting procedures to try when
you submit a print request to a printer and nothing prints:</para><listitem><para>Check the hardware (<olink targetptr="tsprint-84435" remap="internal">How to
Check the Printer Hardware</olink>).</para>
</listitem><listitem><para>Check the network (<olink targetptr="tsprint-13730" remap="internal">How To
Check the Printer Network Connections</olink>).</para>
</listitem><listitem><para>Check the LP print service basic functions (<olink targetptr="tsprint-89143" remap="internal">How to Check the Basic Functions of the LP Print
Service</olink>).</para>
</listitem><listitem><para>Check printing from a Solaris print client to a Solaris print
server (<olink targetptr="tsprint-40161" remap="internal">How to Check Printing From a Solaris
Print Client to a Solaris Print Server</olink>).</para>
</listitem>
</itemizedlist><para>Try the first three procedures in the order in which they are listed,
before going to the print client/server section. However, if the banner page
prints, but nothing else does, turn to the instructions under <olink targetptr="tsprint-81415" remap="internal">How to Troubleshoot Incorrect Output</olink>.</para>
</sect2><task id="tsprint-84435"><title>How to Check the Printer Hardware</title><procedure><step id="tsprint-step-12"><para>Check that the printer is plugged in and
turned on.</para>
</step><step id="tsprint-step-13"><para>Check that the cable is connected to the
port on the printer and to the port on the system or server.</para>
</step><step id="tsprint-step-14"><para>Make sure that the cable is the correct cable
and that it is not defective. </para><para><indexterm id="tsprint-ix5523"><primary>pin configuration (NULL modem cable for printers)</primary></indexterm>Refer
to the manufacturer`s documentation. If the printer is connected to a serial
port, verify that the cable supports hardware flow control. A NULL modem adapter
supports this. The following table shows the pin configuration for NULL modem
cables. </para><informaltable frame="topbot"><tgroup cols="3" colsep="0" rowsep="0"><colspec colname="column1" colwidth="126*"/><colspec colname="column2" colwidth="126*"/><colspec colname="column3" colwidth="107*"/><thead><row rowsep="1"><entry>
</entry><entry><para>Host</para>
</entry><entry><para>Printer</para>
</entry>
</row><row rowsep="1"><entry><para>Mini-Din-8</para>
</entry><entry><para>25-Pin D-sub</para>
</entry><entry><para>25-Pin D-sub</para>
</entry>
</row>
</thead><tbody><row><entry><para>  - </para>
</entry><entry><para>1 (FG)</para>
</entry><entry><para>1(FG)</para>
</entry>
</row><row><entry><para>3(TD)</para>
</entry><entry><para>2(TD)</para>
</entry><entry><para>3(RD)</para>
</entry>
</row><row><entry><para>5(RD)</para>
</entry><entry><para>3(RD)</para>
</entry><entry><para>2(TD)</para>
</entry>
</row><row><entry><para>6(RTS)</para>
</entry><entry><para>4(RTS)</para>
</entry><entry><para>5(CTS)</para>
</entry>
</row><row><entry><para>2(CTS)</para>
</entry><entry><para>5(CTS)</para>
</entry><entry><para>4(RTS)</para>
</entry>
</row><row><entry><para>4(SG)</para>
</entry><entry><para>7(SG)</para>
</entry><entry><para>7(SG)</para>
</entry>
</row><row><entry><para>7(DCD)</para>
</entry><entry><para>6(DSR), 8(DCD)</para>
</entry><entry><para>20(DTR)</para>
</entry>
</row><row><entry><para>1(DTR)</para>
</entry><entry><para>20(DTR)</para>
</entry><entry><para>6(DSR), 8(DCD)</para>
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</step><step id="tsprint-step-15"><para>Check that any hardware switches for the
ports are set properly.</para><para>See the printer documentation for the
correct settings.</para>
</step><step id="tsprint-step-16"><para>Check that the printer is operational.</para><para>Use the printer's self-test feature, if the printer has one. Check the
printer documentation for information about printer self-testing.</para>
</step><step id="tsprint-step-17"><para>Check that the baud settings for the computer
and the printer are correct. </para><para>If the baud settings are not the
same for both the computer and the printer, sometimes nothing will print,
but more often you get incorrect output. For instructions, see <olink targetptr="tsprint-81415" remap="internal">How to Troubleshoot Incorrect Output</olink>.</para>
</step>
</procedure>
</task><task id="tsprint-13730"><title>How To Check the Printer Network Connections</title><procedure remap="single-step"><step id="tsprint-step-19"><para>Check that the network link between the print
server and the print client is set up correctly.</para><screen><replaceable>print-client</replaceable># <userinput>ping</userinput> <replaceable>print-server</replaceable> 
<replaceable>print-server</replaceable> is alive
<replaceable>print-server</replaceable># <userinput>ping</userinput> <replaceable>print-client</replaceable>
<replaceable>print-client</replaceable> not available</screen><para>If the message says the system is alive, you know you can reach the
system, so the network is all right. The message also tells you that either
a naming service or the local <filename>/etc/hosts</filename> file has translated
the host (system) name you entered into an IP address; otherwise, you would
need to enter the IP address. </para><para>If you get a <literal>not available</literal> message, try to answer
the following questions: How is NIS or NIS+ set up at your site? Do you need
to take additional steps so that print servers and print clients can communicate
with one another? If your site is not running NIS or NIS+, have you entered
the IP address for the print server in each print client's <filename>/etc/hosts</filename> file,
and entered all print client IP addresses in the <filename>/etc/hosts</filename> file
of the print server?</para>
</step>
</procedure>
</task><task id="gekzo"><title>How to Debug Printing Problems</title><procedure><step><para>On the system that you want to debug remote printing problems,
become superuser or assume an equivalent role.</para><para>Roles contain authorizations
and privileged commands. For more information about roles, see <olink targetdoc="sysadv6" targetptr="rbactask-15" remap="external"><citetitle remap="section">Configuring RBAC (Task Map)</citetitle> in <citetitle remap="book">System Administration Guide: Security Services</citetitle></olink>.</para>
</step><step><para>Type the following command:</para><screen># <userinput>echo "lpr.debug /var/tmp/lpr.debug" &gt;&gt;/etc/syslog.conf</userinput></screen><note><para>The white space between <filename>lpr.debug</filename> and <filename>/var/tmp/lpr.debug</filename> <emphasis>must</emphasis> be
a tab.</para>
</note>
</step><step><para>Create the <command>lpr.debug</command> file.</para><screen># <userinput>touch /var/tmp/lpr.debug</userinput></screen>
</step><step><para>Restart the syslog service.</para><screen># <userinput>svcadm restart system.log</userinput></screen>
</step>
</procedure>
</task><task id="tsprint-89143"><title>How to Check the Basic Functions of the LP
Print Service</title><tasksummary><para>This procedure uses the printer <literal>luna</literal> as an example
of checking basic LP print service functions.</para>
</tasksummary><procedure><step id="tsprint-step-23"><para>On the print server, make sure that the LP
print service is running.</para><substeps><step id="tsprint-step-176"><para>Check whether the LP scheduler is running
by using one of the following methods.</para><itemizedlist><listitem><para>Use the <command>lpstat</command> command.</para><screen>% <userinput>lpstat -r</userinput>
scheduler is running</screen><para>A message is displayed, indicating whether the LP scheduler is running.</para>
</listitem><listitem><para>Use the <command>svcs</command> command.</para><screen>% <userinput>svcs application/print/server</userinput></screen><para>The following output is displayed if the scheduler is running.</para><screen>STATE		STIME			FMRI
online		Oct_24		svc:/application/print/server:default</screen><para>The following output is displayed if the scheduler is not running.</para><screen>STATE			STIME			FMRI
disabled		14:27:48		svc:/application/print/server:default</screen>
</listitem>
</itemizedlist><screen></screen>
</step><step id="tsprint-step-25"><para><indexterm id="tsprint-ix5525"><primary>print scheduler</primary><secondary>if not running</secondary></indexterm>If the
scheduler is not running, become superuser, <literal>lp</literal>, or assume
an equivalent role. Start the scheduler by using one of the following methods.</para><itemizedlist><listitem><para>Use the <command>lpsched</command> command.</para><screen># <userinput>/usr/lib/lpsched</userinput>
Print services started.</screen><para>A message is displayed, indicating the print services have been started.</para>
</listitem><listitem><para>Use the <command>svcadm</command> command.</para><screen># <userinput>svcadm enable application/print/server</userinput></screen><para>When you use the <command>svcadm</command> command, no message indicating
whether the print services have been started is displayed. To determine if
the print services are online, run the <command>svcs application/print/server</command> command
again.</para>
</listitem>
</itemizedlist><para>If you have trouble starting the scheduler, see <olink targetptr="tsprint-78868" remap="internal">How to Unhang the LP Print Service</olink>.</para>
</step>
</substeps>
</step><step id="tsprint-step-26"><para>On both the print server and print client,
make sure that the printer is accepting requests.</para><substeps><step id="tsprint-step-27"><para>Check that the printer is accepting requests.</para><screen># <userinput>lpstat -a</userinput>
mars accepting requests since Jan 12 14:23 2004
luna not accepting requests since Jan 12 14:23 2004
unknown reason</screen><para>This command verifies that the LP system is accepting requests for each
printer configured for the system.</para>
</step><step id="tsprint-step-28"><para>If the printer is not accepting requests,
become superuser, <literal>lp</literal>, or assume an equivalent role, and
allow the printer to accept print requests. </para><screen># <userinput>accept luna</userinput></screen><para>The specified printer now accepts requests.</para>
</step>
</substeps>
</step><step id="tsprint-step-29"><para>On both the print server and print client,
make sure that the printer is enabled to print submitted print requests.</para><substeps><step id="tsprint-step-30"><para>Check that the printer is enabled.</para><screen># <userinput>lpstat -p luna</userinput>
printer luna disabled since Jan 12 14:25 2004.
available.
unknown reason</screen><para>This command displays information about printer status. You can omit
the printer name to obtain information about all printers set up for the system.
The following example shows a printer that is disabled.</para>
</step><step id="tsprint-step-31"><para>If the printer is disabled, become superuser, <literal>lp</literal>, or assume an equivalent role, and enable the printer.</para><screen># <userinput>enable luna</userinput>
printer "luna" now enabled.</screen><para>The specified printer is enabled to process print requests.</para>
</step>
</substeps>
</step><step id="tsprint-step-32"><para><indexterm id="tsprint-ix5527"><primary>print server</primary><secondary>checking connections of</secondary></indexterm>On
the print server, make sure that the printer is connected to the correct serial
port. </para><substeps><step id="tsprint-step-33"><para>Check that the printer is connected to the
correct serial port.</para><screen># <userinput>lpstat -t</userinput>
scheduler is running
system default destination: luna
device for luna: /dev/term/a</screen><para>The message <literal>device for</literal> <replaceable>printer-name</replaceable> shows
the port address. Is the cable connected to the port to which the LP print
service says is connected? If the port is correct, skip to <olink targetptr="tsprint-step-37" remap="internal">Step&nbsp;5</olink>. </para>
</step><step id="tsprint-step-34"><para>Become superuser, <literal>lp</literal>,
or assume an equivalent role.</para>
</step><step id="tsprint-step-35"><para>Change the file ownership of the device file
that represents the port.</para><screen># <userinput>chown lp <replaceable>device-filename</replaceable></userinput></screen><para>This command assigns the special user <literal>lp</literal> as the owner
of the device file. In this command, <replaceable>device-filename</replaceable> is
the name of the device file.</para>
</step><step id="tsprint-step-36"><para>Change the permissions on the printer port
device file.</para><screen># <userinput>chmod 600 <replaceable>device-filename</replaceable></userinput></screen><para>This command allows only superuser, <literal>lp</literal>, or an equivalent
role to access the printer port device file.</para>
</step>
</substeps>
</step><step id="tsprint-step-37"><para><indexterm id="tsprint-ix5528"><primary>print server</primary><secondary>checking configuration of</secondary></indexterm><indexterm id="tsprint-ix5529"><primary>print client</primary><secondary>checking configuration of</secondary></indexterm>On both the print server and print client, make
sure that the printer is configured properly.  </para><substeps><step id="tsprint-step-38"><para>Check that the printer is configured properly.</para><screen># <userinput>lpstat -p luna -l</userinput>
printer luna is idle. enabled since Jan 12 14:24 2004. available
        Content types: postscript
        Printer types: PS</screen><para>The above example shows a PostScript printer that is configured properly,
and that is available to process print requests. If the printer type and file
content type are correct, skip to <olink targetptr="tsprint-step-40" remap="internal">Step&nbsp;6</olink>.</para>
</step><step id="tsprint-step-39"><para>If the printer type or file content type
is incorrect, try setting the print type to <literal>unknown</literal> and
the content type to <literal>any</literal> on the print client.</para><screen># <userinput>lpadmin -p</userinput> <replaceable>printer-name</replaceable> <userinput>-T</userinput> <replaceable>printer-type</replaceable> <userinput>-I</userinput> <replaceable>file-content-type</replaceable></screen>
</step>
</substeps>
</step><step id="tsprint-step-40"><para>On the print server, make sure that the printer
is not faulted.</para><substeps><step id="tsprint-step-41"><para>Check that the printer is not waiting because
of a printer fault.</para><screen># <userinput>lpadmin -p</userinput> <replaceable>printer-name</replaceable> <userinput>-F continue</userinput> </screen><para>This command instructs the LP print service to continue if it is waiting
because of a fault.</para>
</step><step id="tsprint-step-42"><para>Force an immediate retry by re-enabling the
printer.</para><screen># <userinput>enable</userinput> <replaceable>printer-name</replaceable> </screen>
</step><step id="tsprint-step-43"><para>(Optional) Instruct the LP print service
to enable quick notification of printer faults. </para><screen># <userinput>lpadmin -p</userinput> <replaceable>printer-name</replaceable> <userinput>-A 'write root'</userinput></screen><para>This command instructs the LP print service to set a default policy
of writing root, sending the printer fault message to the terminal on which
root is logged in, if the printer fails. This might help you get quick notification
of faults as you try to fix the problem.</para>
</step>
</substeps>
</step><step id="tsprint-step-44"><para>Make sure that the printer is not set up
incorrectly as a login terminal.</para><note><para>It is easy to mistakenly set up a printer as a login terminal,
so be sure to check this possibility even if you think it does not apply.</para>
</note><substeps><step id="tsprint-step-45"><para>Look for the printer port entry in the <command>ps -ef</command> command output.</para><screen># <userinput>ps -ef</userinput>
    root   169   167  0   Apr 04 ?        0:08 /usr/lib/saf/listen tcp
    root   939     1  0 19:30:47 ?        0:02 /usr/lib/lpsched
    root   859   858  0 19:18:54 term/a   0:01 /bin/sh -c \ /etc/lp
/interfaces/luna
luna-294 rocket!smith &ldquo;passwd\n##
#</screen><para>In the output from this command, look for the printer port entry. In
the above example, port <literal>/dev/term/a</literal> is set up incorrectly
as a login terminal. You can tell by the <literal>"passwd\n##</literal> information
at the end of the line. If the port is set correctly, skip the last steps
in this procedure.</para>
</step><step id="tsprint-step-46"><para>Cancel the print request(s).</para><screen># <userinput>cancel</userinput> <replaceable>request-id</replaceable></screen><para>In this command, <replaceable>request-id</replaceable> is the request
ID number for a print request to be canceled.</para>
</step><step id="tsprint-step-47"><para>Set the printer port to be a nonlogin device.</para><screen># <userinput>lpadmin -p</userinput> <replaceable>printer-name</replaceable> <userinput>-h</userinput></screen>
</step><step id="tsprint-step-48"><para>Check the <command>ps -ef</command> command
output to verify that the printer port is no longer a login device.</para><para>If
you do not find the source of the printing problem in the basic LP print service
functions, continue to one of the following procedures for the specific client/server
case that applies. </para>
</step>
</substeps>
</step>
</procedure>
</task><task id="tsprint-40161"><title>How to Check Printing From a Solaris Print
Client to a Solaris Print Server</title><procedure><step id="tsprint-step-49"><para><indexterm id="tsprint-ix5530"><primary>LP print service</primary><secondary>checking basic functions of</secondary></indexterm>Check the basic functions of the LP print service on the print
server, if you have not done so already. </para><para>For instructions on
checking basic functions, see <olink targetptr="tsprint-89143" remap="internal">How to Check
the Basic Functions of the LP Print Service</olink>. Make sure that the printer
works locally before trying to figure out why nothing prints when a request
is made from a print client.</para>
</step><step id="tsprint-step-50"><para>Check the basic functions of the LP print
service on the print client, if you have not done so already.</para><para>On
the print client, the printer has to be enabled and accepting requests before
any request from the client will print.</para><note><para>For most of the following steps, you must be logged in as root
or <literal>lp</literal>.</para>
</note>
</step><step id="tsprint-step-51"><para><indexterm id="tsprint-ix5531"><primary>print server</primary><secondary>checking access to</secondary></indexterm>Make
sure that the print server is accessible. </para><substeps><step id="tsprint-step-52"><para>On the print client, send an &ldquo;are you
there?&rdquo; request to the print server.</para><screen><replaceable>print-client</replaceable># <userinput>ping</userinput> <replaceable>print-server</replaceable></screen><para>If you receive the message <replaceable>print-server</replaceable> <literal>not available</literal>, you might have a network problem.</para>
</step>
</substeps>
</step><step id="tsprint-step-62"><para>Verify that the print server is operating
properly.</para><screen># <userinput>lpstat -t luna</userinput> 
scheduler is running
system default destination: luna
device for luna: /dev/term/a
luna accepting requests since Jan 12 14:26 2004
printer luna now printing luna-314. enabled since Jan 12 14:26 2004. 
available.
luna-129            root               488   Jan 12 14:32
#</screen><para>The above example shows a print server up and running.</para>
</step><step id="tsprint-step-177"><para>If the print server is not operating properly,
go back to step 1.</para>
</step>
</procedure>
</task><task id="tsprint-81415"><title>How to Troubleshoot Incorrect Output</title><procedure><step id="tsprint-step-127"><para>Log in as superuser, <literal>lp</literal>,
or assume an equivalent role.</para>
</step><step id="tsprint-step-128"><para>Make sure that the printer type is correct. </para><para><indexterm id="tsprint-ix5548"><primary>printer type</primary><secondary>troubleshooting setting of</secondary></indexterm>An incorrect printer type might cause incorrect
output. For example, if you specify printer type <literal>PS</literal> and
the pages print in reverse order, try printer type <literal>PSR</literal>.
(These type names must be in uppercase.) Also, an incorrect printer type might
cause missing text, illegible text, or text with the wrong font. To determine
the printer type, examine the entries in the <literal>terminfo</literal> database.
For information on the structure of the <literal>terminfo</literal> database,
see <olink targetptr="printplan-15" remap="internal">Printer Type</olink>.</para><substeps><step id="tsprint-step-129"><para>On the print server, display the printer's
characteristics.</para><screen>$ <userinput>lpstat -p luna -l</userinput>
printer luna is idle. enabled since Thu Jul 12 15:02:32 ...
        Form mounted: 
        Content types: postscript
        Printer types: PS
        Description:
        Connection: direct
        Interface: /usr/lib/lp/model/standard
        After fault: continue
        Users allowed:
                (all)
        Forms allowed:
                (none)
        Banner not required
        Character sets:

        Default pitch:
        Default page size: 80 wide 66 long
        Default port settings:  
$</screen>
</step><step id="tsprint-step-130"><para>Consult the printer manufacturer's documentation
to determine the printer model. </para>
</step><step id="tsprint-step-131"><para>If the printer type is not correct, change
it with Solaris Print Manager's Modify Printer Properties window, or use the
following <command>lpadmin</command> command.</para><screen># <userinput>lpstat -p</userinput> <replaceable>printer-name</replaceable> <userinput>-T</userinput> <replaceable>printer-type</replaceable></screen><para>On the print client, the printer type should be <literal>unknown</literal>.
On the print server, the printer type must match a <literal>terminfo</literal> entry
that is defined to support the model of printer you have. If there is no <command>terminfo</command> entry for the type of printer you have, see <olink targetptr="printcust-24894" remap="internal">How to Add a terminfo Entry for an Unsupported
Printer</olink>.</para>
</step>
</substeps>
</step><step id="tsprint-step-132"><para><indexterm id="tsprint-ix5549"><primary>banner pages</primary><secondary>nothing else prints</secondary></indexterm>If the
banner page prints, but there is no output for the body of the document, check
the file content types.   </para><para><indexterm id="tsprint-ix5552"><primary>printers</primary><secondary>file content types</secondary><tertiary>incorrect output</tertiary></indexterm><indexterm id="tsprint-ix5553"><primary>print filters</primary><secondary>bypassing</secondary></indexterm>File content types specified for
a printer indicate the types of files the printer can print directly without
filtering. An incorrect file content type causes filtering to be bypassed
when it might be needed.  </para><substeps><step id="tsprint-step-133"><para>Note the information on file content type
that was supplied in the previous step by the <command>lpstat</command> command.</para><para>On the print client, the file content type should be <literal>any</literal>,
unless you have good reason to specify one or more explicit content types.
If a content is specified on the client, filtering is done on the print client,
rather than the print server. In addition, content types on the client must
match the content types specified on the print server, which in turn must
reflect the capabilities of the printer.</para>
</step><step id="tsprint-step-134"><para>Consult your printer manufacturer's documentation
to determine which types of files the printer can print directly.</para><para>The
names you use to refer to these types of files do not have to match the names
used by the manufacturer. However, the names you use must agree with the names
used by the filters known to the LP print service.</para>
</step><step id="tsprint-step-135"><para>If the file content type is not correct,
change it with Solaris Print Manager's Modify Printer Properties window, or
the following <command>lpadmin</command> command.</para><screen># <userinput>lpadmin -p</userinput> <replaceable>printer-name</replaceable> <userinput>-I</userinput> <replaceable>file-content-type(s)</replaceable></screen><para>Run this command on either the print client, or print server, or both,
as needed. Try <option>I any</option> on the print client, and <option>I ""</option> on
the print server. The latter specifies a null file content type list, which
means an attempt should be made to filter all files, because the printer can
directly print only files that exactly match its printer type. </para><para>This combination is a good first choice when files are not printing.
If it works, you might want to try specifying explicit content types on the
print server to reduce unnecessary filtering. For a local PostScript printer,
you should use <literal>postscript</literal>, or <literal>postscript,simple</literal>,
if the printer supports these types. Be aware that <literal>PS</literal> and <literal>PSR</literal> are not file content types; they are printer types.</para><para>If you omit <option>I</option>, the file content list defaults to <literal>simple</literal>. If you use the <option>I</option> option and want to specify
file content types in addition to <literal>simple</literal>, <literal>simple</literal> must
be included in the list.</para><para>When specifying multiple file content types, separate the names with
commas. Or you can separate names with spaces and enclose the list in quotation
marks. If you specify <literal>any</literal> as the file content type, no
filtering will be done and only file types that can be printed directly by
the printer should be sent to it. </para>
</step>
</substeps>
</step><step id="tsprint-step-136"><para>Check that the print request does not bypass
filtering needed to download fonts.</para><para><indexterm id="tsprint-ix5554"><primary>print filters</primary><secondary>bypassing</secondary></indexterm><indexterm id="tsprint-ix5555"><primary>fonts</primary><secondary>downloading</secondary></indexterm><indexterm id="tsprint-ix5556"><primary>downloading</primary><secondary>fonts</secondary></indexterm>If a user submits a print request
to a PostScript printer with the <command>lp -T PS</command> command, no filtering
is done. Try submitting the request with the <command>lp -T postscript</command> command
to force filtering, which might result in the downloading of non-resident
fonts needed by the document.   </para>
</step><step id="tsprint-step-137"><para>Make sure that the <literal>stty</literal> settings
for the printer port are correct.</para><substeps><step id="tsprint-step-138"><para>Read the printer documentation to determine
the correct <literal>stty</literal> settings for the printer port.</para><note><para>If a printer is connected to a parallel or USB port, the baud
setting is irrelevant.</para>
</note>
</step><step id="tsprint-step-139"><para>Examine the current settings by using the <command>stty</command> command.</para><screen width="100"># <userinput>stty -a &lt; /dev/term/a</userinput>
speed 9600 baud;
rows = 0; columns = 0; ypixels = 0; xpixels = 0;
eucw 1:0:0:0, scrw 1:0:0:0
intr = ^c; quit = ^|; erase = ^?; kill = ^u;
eof = ^d; eol = &lt;undef&gt;; eol2 = &lt;undef&gt;; swtch = &lt;undef&gt;;
start = ^q; stop = ^s; susp = ^z; dsusp = ^y;
rprnt = ^r; flush = ^o; werase = ^w; lnext = ^v;
parenb -parodd cs7 -cstopb -hupcl cread -clocal -loblk -parext
-ignbrk brkint -ignpar -parmrk -inpck istrip -inlcr -igncr icrnl -iuclc
ixon -ixany -ixoff imaxbel
isig icanon -xcase echo echoe echok -echonl -noflsh
-tostop echoctl -echoprt echoke -defecho -flusho -pendin iexten
opost -olcuc onlcr -ocrnl -onocr -onlret -ofill -ofdel tab3
#</screen><para>This command shows the current <literal>stty</literal> settings for
the printer port.</para><para>The following table shows the default <command>stty</command> options
used by the LP print service's standard printer interface program.</para><informaltable frame="topbot"><tgroup cols="2" colsep="0" rowsep="0"><colspec colname="column1" colwidth="107*"/><colspec colname="column2" colwidth="254*"/><thead><row rowsep="1"><entry><para>Option</para>
</entry><entry><para>Meaning</para>
</entry>
</row>
</thead><tbody><row><entry><para><option>9600</option></para>
</entry><entry><para>Set baud rate to 9600</para>
</entry>
</row><row><entry><para><option>cs8</option></para>
</entry><entry><para>Set 8-bit bytes</para>
</entry>
</row><row><entry><para><option>cstopb</option></para>
</entry><entry><para>Send one stop bit per byte</para>
</entry>
</row><row><entry><para><option>parity</option></para>
</entry><entry><para>Do not generate parity</para>
</entry>
</row><row><entry><para><option>ixon</option></para>
</entry><entry><para>Enable XON/XOFF (also known as START/STOP or DC1/DC3)</para>
</entry>
</row><row><entry><para><option>opost</option></para>
</entry><entry><para>Do &ldquo;output post-processing&rdquo; using all the settings that
follow in this table</para>
</entry>
</row><row><entry><para><option>olcuc</option></para>
</entry><entry><para>Do not map lowercase to uppercase</para>
</entry>
</row><row><entry><para><option>onlcr</option></para>
</entry><entry><para>Change line feed to carriage return/line feed</para>
</entry>
</row><row><entry><para><option>ocrnl</option></para>
</entry><entry><para>Do not change carriage returns into line feeds</para>
</entry>
</row><row><entry><para><option>onocr</option></para>
</entry><entry><para>Output carriage returns even at column 0</para>
</entry>
</row><row><entry><para><option>n10</option></para>
</entry><entry><para>No delay after line feeds</para>
</entry>
</row><row><entry><para><option>cr0</option></para>
</entry><entry><para>No delay after carriage returns</para>
</entry>
</row><row><entry><para><option>tab0</option></para>
</entry><entry><para>No delay after tabs</para>
</entry>
</row><row><entry><para><option>bs0</option></para>
</entry><entry><para>No delay after backspaces</para>
</entry>
</row><row><entry><para><option>vt0</option></para>
</entry><entry><para>No delay after vertical tabs</para>
</entry>
</row><row><entry><para><option>ff0</option></para>
</entry><entry><para>No delay after form feeds</para>
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</step><step id="tsprint-step-140"><para>Change the <literal>stty</literal> settings.</para><screen># <userinput>lpadmin -p</userinput> <userinput>printer-name</userinput> <userinput>-o "stty=</userinput> <replaceable>options</replaceable><userinput>"</userinput> </screen><para><indexterm id="tsprint-ix5557"><primary>stty settings</primary><secondary>defaults</secondary></indexterm><indexterm id="tsprint-ix5558"><primary>printers</primary><secondary>stty settings</secondary></indexterm><indexterm id="tsprint-ix5560"><primary>stty settings</primary><secondary>suggestions for</secondary></indexterm>Use the following table to choose <command>stty</command> options
to correct various problems affecting print output.  </para><informaltable frame="topbot"><tgroup cols="3" colsep="0" rowsep="0"><colspec colname="column1" colwidth="87*"/><colspec colname="column2" colwidth="131*"/><colspec colname="column3" colwidth="141*"/><thead><row rowsep="1"><entry><para><literal>stty</literal> Values</para>
</entry><entry><para>Result</para>
</entry><entry><para>Possible Problem  From Incorrect Setting</para>
</entry>
</row>
</thead><tbody><row><entry><para><literal>110</literal>, <literal>300</literal>, <literal>600</literal>, <literal>1200</literal>, <literal>1800</literal>, <literal>2400</literal>, <literal>4800</literal>, <literal>9600</literal>, <literal>19200</literal>, <literal>38400</literal></para>
</entry><entry><para>Sets baud rate to the specified value (enter only one baud rate)</para>
</entry><entry><para>Random characters and special characters might be printed and spacing
might be inconsistent</para>
</entry>
</row><row><entry><para><literal>oddp</literal></para><para><literal>evenp</literal></para><para><literal>-parity</literal></para>
</entry><entry><para>Sets odd parity</para><para>Sets even parity</para><para>Sets no parity</para>
</entry><entry><para>Missing or incorrect characters appear randomly</para>
</entry>
</row><row><entry><para><literal>-tabs</literal></para>
</entry><entry><para>Sets no tabs</para>
</entry><entry><para>Text is jammed against right margin</para>
</entry>
</row><row><entry><para><literal>tabs</literal></para>
</entry><entry><para>Sets tabs every eight spaces</para>
</entry><entry><para>Text has no left margin, is run together, or is jammed together</para>
</entry>
</row><row><entry><para><literal>-onlcr</literal></para>
</entry><entry><para>Sets no carriage return at the beginning of line(s)</para>
</entry><entry><para>Incorrect double spacing</para>
</entry>
</row><row><entry><para><literal>onlcr</literal></para>
</entry><entry><para>Sets carriage return at beginning of line(s)</para>
</entry><entry><para>The print zigzags down the page</para>
</entry>
</row>
</tbody>
</tgroup>
</informaltable><para>You can change more than one option setting by enclosing
the list of options in single quotation marks and separating each option with
spaces. For example, suppose the printer requires you to enable odd parity
and set a 7-bit character size. You would type a command similar to that shown
in the following example:</para><screen># <userinput>lpadmin -p neptune -o "stty='parenb parodd cs7'"</userinput></screen><para>The <literal>stty</literal> option <literal>parenb</literal> enables
parity checking/generation, <literal>parodd</literal> sets odd parity generation,
and <literal>cs7</literal> sets the character size to 7 bits.</para>
</step>
</substeps>
</step><step id="tsprint-step-141"><para>Verify that the document prints correctly.</para><screen># <userinput>lp -d</userinput> <replaceable>printer-name</replaceable> <replaceable>filename</replaceable></screen>
</step>
</procedure>
</task><task id="tsprint-78868"><title>How to Unhang the LP Print Service</title><indexterm><primary>LP commands</primary>
</indexterm><procedure><step id="tsprint-step-143"><para>Log in as superuser, <literal>lp</literal>,
or assume an equivalent role.</para>
</step><step id="tsprint-step-144"><para>Stop the LP print service.</para><screen># <userinput>svcadm disable /application/print/server</userinput></screen>
</step><step id="tsprint-step-149"><para>Restart the LP print service.</para><screen># <userinput>svcadm enable /application/print/server</userinput></screen><para>The LP print service should restart. If you are having trouble restarting
the scheduler, see <olink targetptr="printadmin-29920" remap="internal">How to Restart the
Print Scheduler</olink>.</para>
</step>
</procedure>
</task><sect2 id="tsprint-18877"><title>Troubleshooting an Idle (Hung) Printer</title><indexterm id="tsprint-ix5566"><primary>printers</primary><secondary>troubleshooting</secondary><tertiary>hung printers</tertiary>
</indexterm><para>This task includes a number of procedures to use when a printer appears
idle but it should not be. It makes sense to try the procedures in order,
but the order is not mandatory.</para>
</sect2><task id="tsprint-150"><title>How to Check That the Printer is Ready to Print</title><procedure><step id="tsprint-step-152"><para>Display printer status information.</para><screen># <userinput>lpstat -p</userinput> <replaceable>printer-name</replaceable> </screen><para>The information displayed shows you whether the printer is idle or active,
enabled or disabled, or available or not accepting print requests. If everything
looks all right, continue with other procedures in this section. If you cannot
run the <command>lpstat</command> command, see <olink targetptr="tsprint-78868" remap="internal">How
to Unhang the LP Print Service</olink>.</para>
</step><step id="tsprint-step-153"><para>If the printer is not available (not accepting
requests), allow the printer to accept requests.</para><screen># <userinput>accept</userinput> <replaceable>printer-name</replaceable> </screen><para>The printer begins to accept requests into its print queue.</para>
</step><step id="tsprint-step-154"><para>If the printer is disabled, re-enable it.</para><screen># <userinput>enable</userinput> <replaceable>printer-name</replaceable> </screen><para>This command re-enables the printer so that it will act on the requests
in its queue.</para>
</step>
</procedure>
</task><sect2 id="tsprint-155"><title>Checking for Print Filtering</title><para>Check for print filtering by using the <command>lpstat -o</command> command. </para><screen>$ <userinput>lpstat -o luna</userinput>
luna-10           fred         1261   Mar 12 17:34 being filtered
luna-11           iggy         1261   Mar 12 17:36 on terra
luna-12           jack         1261   Mar 12 17:39 on terra
$</screen><para>See if the first waiting request is being filtered. If the output looks
like the above example, the file is being filtered; the printer is not hung,
it just is taking a while to process the request.</para>
</sect2><task id="tsprint-156"><title>How to Resume Printing After a Printer Fault</title><procedure><step id="tsprint-step-158"><para>Look for a message about a printer fault
and try to correct the fault if there is one.</para><para>Depending on how
printer fault alerts have been specified, messages might be sent to root by
email or written to a terminal on which root is logged in.</para>
</step><step id="tsprint-step-159"><para>Re-enable the printer.</para><screen># <userinput>enable</userinput> <replaceable>printer-name</replaceable> </screen><para>If a request was blocked by a printer fault, this command will force
a retry. If this command does not work, continue with other procedures in
this section.</para>
</step>
</procedure>
</task><task id="tsprint-160"><title>How to Send Print Requests to a Remote Printer
When Requests
in the Local Queue Are
Backed Up</title><procedure><step id="tsprint-step-162"><para>On the print client, stop further queuing
of print requests to the print server.</para><screen># <userinput>reject</userinput> <replaceable>printer-name</replaceable> </screen>
</step><step id="tsprint-step-163"><para>On the print client, send an &ldquo;are
you there?&rdquo; request to the print server. </para><screen><replaceable>print-client</replaceable># <userinput>ping</userinput> <replaceable>print-server</replaceable>
<replaceable>print-server</replaceable> is alive</screen><para>If you receive the message <replaceable>print-server</replaceable> <literal>not available</literal>, you might have a network problem.</para>
</step><step id="tsprint-step-165"><para>After you fix the above problem, allow new
print requests to be queued.</para><screen># <userinput>accept</userinput> <replaceable>printer-name</replaceable> </screen>
</step><step id="tsprint-step-166"><para>If necessary, re-enable the printer.</para><screen># <userinput>enable</userinput> <replaceable>printer-name</replaceable> </screen>
</step>
</procedure>
</task><task id="tsprint-167"><title>How to ReleasePrint Requests That Are Backed Up onthe Print Server</title><procedure><step id="tsprint-step-169"><para>On the print server, stop further queuing
of print requests from any print client to the print server.</para><screen># <userinput>reject</userinput> <replaceable>printer-name</replaceable> </screen>
</step><step id="tsprint-step-170"><para>Display the <filename>lpsched</filename> log
file.</para><screen># <userinput>more /var/lp/logs/lpsched</userinput></screen><para>The information displayed might help you pinpoint what is preventing
the print requests from the print client to the print server from being printed.</para>
</step><step id="tsprint-step-171"><para>After you fix the problem, allow new print
requests to be queued.</para><screen># <userinput>accept</userinput> <replaceable>printer-name</replaceable></screen>
</step><step id="tsprint-step-172"><para><indexterm id="tsprint-ix5568"><primary>print client</primary><secondary>freeing jobs in</secondary></indexterm>If necessary,
re-enable the printer on the print server. </para><screen># <userinput>enable</userinput> <replaceable>printer-name</replaceable></screen>
</step>
</procedure>
</task><task id="tsprint-91367"><title>How to Resolve Conflicting Printer Status
Messages</title><indexterm><primary>printing</primary>
</indexterm><procedure><step id="tsprint-step-174"><para>On the print server, verify the printer
is enabled and is accepting requests.</para><screen># <userinput>lpstat -p</userinput> <replaceable>printer-name</replaceable></screen><para>Users will see conflicting status messages when the print client is
accepting requests, but the print server is rejecting requests.</para>
</step><step id="tsprint-step-175"><para><indexterm id="tsprint-ix5571"><primary>troubleshooting</primary><secondary>printing problems</secondary></indexterm>On the print
server, check that the definition of the printer on the print client matches
the definition of the printer on the print server. </para><screen># <userinput>lpstat -p -l</userinput> <replaceable>printer-name</replaceable></screen><para>Look at the definitions of the print job components, like print filters,
character sets, print wheels, and forms, to be sure they are the same on both
the client and server systems so that local users can access printers on print
server systems.</para>
</step>
</procedure>
</task>
</sect1>
</chapter><?Pub *0000068191 0?>