Previous Table of Contents Next


Check the LP Print Service

For printing to work, the LP scheduler must be running on both the print server and print clients. In addition to the scheduler running, a printer must be enabled and accepting requests before it can produce output. If the LP print service is not accepting requests for a printer, the submitted jobs (print requests) are rejected. Usually, in that instance, the user receives a warning message when a job is submitted. If the LP print service is not enabled for a printer, jobs remain queued on the system until the printer is enabled. In general, analyze a printing problem as follows:

1.  Follow the path of the print request step by step.
2.  Examine the status of the LP print service at each step.
3.  Is the configuration correct?
4.  Is the printer accepting requests?
5.  Is the printer enabled to process requests?
6.  If the request is hanging on transmission, examine the lpsched log (/var/lp/logs/lpsched).
7.  If the request is hanging locally, have notification of the printer device errors (faults) mailed to you, and re-enable the printer.

Following are a couple other questions to ask:

  Did the printer ever work?
  Was something changed recently that might affect printing?

How to Check and Start the Scheduler

The print scheduler must be running both on the print server and on each print client system. On the print server and on each print client, type lpstat -r and press Return. Check the output of the command to make sure that the LP print service is running.

elm% lpstat -r
scheduler is running
elm%

If the scheduler is not running, become superuser, type /usr/lib/lp/lpsched, and press Return.

How to Enable Printers and Accept Print Requests

You must enable printers and tell them to accept print requests.

Follow these steps both on the print server and on each print client to make sure that the printer is enabled and is accepting print requests:

1.  Type lpstat -a and press Return to make sure that the printer is accepting requests.
elm% lpstat -a
oak accepting requests since Wed Mar 13 20:37:07 PST 1991
pinecone not accepting requests since Wed Apr 17 19:10:55 PDT 1991
 unknown reason
elm%
  If the printer is not accepting requests, become superuser and then type accept printer-name and press Return. The printer you specify should now accept requests. Type lpstat -a and press Return again to make sure that the printer is accepting requests.
2.  Type lpstat -p printer-name and press Return to make sure that the printer is enabled to print requests. In the following example, the printer pinecone is disabled.
elm% lpstat -p pinecone
printer pinecone disabled since Wed Apr 17 19:13:33 PDT 1991.
 available.
unknown reason
elm%

If the printer is disabled, become superuser, then type enable printer-name and press Return. The printer you specify should be enabled. Type lpstat -p printer-name and press Return again to make sure the print is enabled.
pine% su
Password:
# enable pinecone
printer "pinecone" now enabled.
#

How to Check the Port Connection

Make sure that the cable is connected to the port that the LP print service is using. To find out which port is configured for the LP print service, type lpstat -t on the print server and press Return. In the following example, the printer is connected to /dev/term/a.

elm% lpstat -t
scheduler is running
system default destination: pinecone
device for pinecone: /dev/term/a
elm%

If the cable is connected to the right port, type ls -l /devices and press Return to check whether the device is owned by lp and that the permissions are set to 600. In the following example, the port is configured correctly.

oak% ls -l /devices
total 12
crw-rw-rw- 1 root  sys   28, Ø Mar 24 1Ø:22 audio@1,f72Ø1ØØØ:sound,audio
crw-rw-rw- 1 root  sys   28,128 Mar 24 1Ø:22 audio@1,f72Ø1ØØØ:sound,
audioctl
crw----  1 root  sys    68, 11 Mar 24 Ø9:39 eeprom@1,f2ØØØØØØ:eeprom
brw-rw-rw- 1 root  sys    36,  Ø Mar 24 Ø9:39 fd@1,f72ØØØØØ:a
crw-rw-rw- 1 root  sys    36,  Ø Mar 24 Ø9:39 fd@1,f72ØØØØØ:a,raw
brw-rw-rw- 1 root  sys    36,  1 Mar 24 Ø9:39 fd@1,f72ØØØØØ:b
crw-rw-rw- 1 root  sys    36,  1 Mar 24 Ø;9:39 fd@1,f72ØØØØØ:b,raw
brw-rw-rw- 1 root  sys    36,  2 Mar 24 Ø9:39 fd@1,f72ØØØØØ:c
crw-rw-rw- 1 root  sys    36,  2 Mar 24 Ø9:39 fd@1,f72ØØØØØ:c,raw
drwxr-xr-x 2 root  sys    46Ø8 Mar 24 1Ø:22 pseudo
drwxr-xr-x 3 root  sys     512 Mar 24 11:41 sbus@1,f8ØØØØØØ
crw----  1 lp    sys   29,  Ø Mar 24 Ø9:39 zs@1,f1ØØØØØØ:a
crw-rw-rw- 1 root  sys   29,131Ø72 Mar 24 Ø9:39 zs@1,f1ØØØØØØ:a,cu
crw-rw-rw- 1 root  sys   29,  1 Mar 24 Ø9:39 zs@1,f1ØØØØØØ:b
crw-rw-rw- 1 root  sys   29,131Ø73 Mar 24 Ø9:39 zs@1,f1ØØØØØØ:b,cu
oak%

If you are not certain which device is the serial port, you can type ls -l/dev/term and press Return to display the link to the /devices file.

oak% ls -l/dev/term
total 4
lrwxrwxrwx  1 root   root    29 Mar 24 1Ø:23 a ->
../../devices/zs@1,flØØØØØØ:a
lrwxrwxrwx  1 root   root    29 Mar 24 1Ø:23 b ->
../../devices/zs@;1,flØØØØØØ:b
oak%

Use the following steps if you need to change the ownership or permissions for the device:

1.  Become superuser.
2.  Type chown lp device-name and press Return. The lp process now owns the port device file, and no other processes can use it.
3.  Type chmod 600 device-name and press Return. Only lp or root can access the printer port device file.


Previous Table of Contents Next