Previous Table of Contents Next

Check the Baud Settings

When the baud setting of the computer does not match the baud setting of the printer, you usually get some output, but it does not look like what you submitted for printing. Random characters show up, with an unusual mixture of special characters and undesirable spacing. The default for the LP print service is 9600 baud.

NOTE:  If a printer is connected by a parallel port, the baud setting is irrelevant.

Check the Parity Setting

Some printers use a parity bit to ensure that data received for printing has not been garbled during transmission. The parity bit settings for the computer and for the printer must match. If they do not match, some characters do not print at all or are replaced by other characters. The output will look only approximately correct, with the word spacing all right and many letters in their correct place. The LP print service does not set the parity bit by default.

Check the Tab Settings

If tabs are set but the printer expects no tabs, the printed output may contain the complete contents of the file, but the text may be jammed against the right margin. Also, if the tab settings for the printer are incorrect, the text may not have a left margin, may run together, may be concentrated in a portion of the page, or may be incorrectly double-spaced. The default is for tab settings every eight spaces.

Check the Return Setting

If the output is double-spaced but 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.

If the print zigzags down the page, the stty option onlcr, which sends a Return before every line feed, is not set. The stty=onlcr option is set by default, but you may have cleared it while trying to solve other printing problems.

Hung LP Print Service Commands

If you type any of the lp commands (lpsystem, lpadmin, lpstat, lpshut) and nothing happens (you get no error message, status information, or prompt), chances are that something is wrong with the LP scheduler. You usually can resolve such a problem by stopping and restarting the LP scheduler.

Use the following steps to free hung lp commands:

1.  Become superuser.
2.  Type lpshut and press Return. If this command hangs, press Control-C and proceed to the next step. If this command succeeds, skip to step 5.
3.  Type ps -e | grep lpsched and press Return. Note the process ID numbers (PID) from the first column. You use these PID numbers in the next step.
# ps -e | grep lpsched
134 term/a    Ø:Ø1 lpsched
4.  Type kill -9 pid and press Return. All the lp processes are terminated.
# kill -9 134
5.  Type rm /usr/spool/lp/SCHEDLOCK and press Return. You have removed the SCHEDLOCK file so that you can restart the LP print service.
6.  Type /usr/lib/lp/lpsched and press Return. The LP print service restarts.

Idle (Hung) Printers

You may find a printer that is idle even though print requests have been queued to it. A printer may seem idle when it shouldn't be for one of the following reasons:

  The current print request is being filtered.
  The printer has a fault.
  Networking problems may be interrupting the printing process.

Check the Print Filters

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. To check the print filters, type lpstat -o printer-name and press Return. See if the first waiting request is being filtered. If the output looks like the following example, the file is being filtered. The printer is not hung; it just is taking a while to process the request.

pine% lpstat -o pinecone
pinecone-1Ø        fred      1261   Mar 12 17:34 being filtered
pinecone-11        iggy      1261   Mar 12 17:36 on pine
pinecone-12        jack      1261   Mar 12 17:39 on pine

Check Printer Faults

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.

Use the following steps to resume printing after a printer fault:

1.  Look for a message about a printer fault and try to correct the fault if you find one. Depending on how printer fault alerts have been specified, messages may be sent to root by email or may be written to a terminal on which you (root) are logged in.
2.  Type enable printer-name and press Return. If a request was blocked by a printer fault, this command will force a retry. If this command doesn't work, continue with other procedures in this section.

Check Network Problems

When printing files over a network, you may encounter the following types of problems:

  Requests sent to print servers may back up in the client system (local) queue.
  Requests sent to print servers may back up in the print server (remote) queue.

Use the following steps to check that the printer is ready to print:

1.  Type lpstat -p printer-name and press Return. The information that comes up tells 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.
2.  If the printer is not available (is not accepting requests), become superuser and type accept printer-name and press Return. The printer begins to accept requests to its print queue.
3.  If the printer is disabled, type enable printer-name and press Return. This command re-enables the printer so that it can act on the requests in its queue.

Previous Table of Contents Next