Administering Print Requests by Using the LP Print Commands (Task Map)
Task |
Description |
For Instructions |
Check the status of print requests. |
Use
the lpstat command to check the status of print requests. |
How to Check the Status of Print Requests |
Enable or disable a
printer. |
Use the enable and disable commands to control whether a printer prints requests
or stops printing requests that are in the print queue. |
How to Enable or Disable a Printer |
Accept or reject print
requests for a printer. |
Use the accept and reject commands to turn on or
turn off a print queue that stores requests to be printed. |
How to Accept or Reject Print Requests for a Printer |
Cancel
a print request. |
Use the can use the cancel command to cancel print
requests in one of the following three ways:
Cancel requests by request identification number (request ID)
Cancel requests from a specific user on all printers or specific printers
Cancel the job currently printing
|
How to Cancel a Print Request |
Cancel a print request from a
specific user. |
Cancel the request for a user by using the cancel -u command and
specifying that user. |
How to Cancel a Print Request From a Specific User |
Move print requests to another printer. |
Move or cancel any requests
that are currently queued to a printer. You can use the lpmove command
to move individual or all print requests to another local printer. |
How to Move Print Requests to Another Printer |
Change the priority
of a print request. |
Change the priority of a print request in one
of the following ways:
Put a print request on hold if it has not finished printing.
Move a print request to the head of the queue.
Change the priority of a job still waiting to be printed.
|
How to Change the Priority of a Print Request |
When a user submits a print request from a print client, the
print request is added to a queue on the print server before it
is sent to the printer. While a print request is in the queue,
you can cancel or gain status information on the request from a client
system. You must log in to the print server to move, hold, resume,
or change the priorities of print requests with LP print service commands. These
actions can help you keep printing services operating smoothly.
The following table lists the values for changing the priority of a print
request by using the lp -H command.
Table 5-6 Values for Changing the Priority of a Print Request
Value for -H change-priority |
Description |
hold |
Places the print
request on hold until you cancel the request or instruct the LP print
service to resume printing the request. |
resume |
Places a print request that has been
on hold back in the queue. The request is printed according to its
priority and placement in the queue. If you place on hold a print
job that is already printing, resume places the print request at the head
of the queue so that it becomes the next request printed. |
immediate |
Places a print
request at the head of the queue. If a request is already printing,
you can put the request on hold to allow the next request
to print immediately. |
How to Check the Status of Print Requests
- Log in on any system on the network.
- Check the status of printers and print requests.
Only the most commonly used options are shown here. For other valid options,
see the lpstat(1) man page.
$ lpstat -o [list] | -u [user-list]
- -o list
Shows the status of print requests on a specific printer. list can be one or more printer names, printer class names, or print request IDs.
To specify multiple printer names, class names, and IDs for list, use a space or a comma to separate values. If you use spaces, enclose the list of values in quotation marks.
If you don't specify list, the status of print requests sent to all printers is displayed.
- -u user-list
Shows the status of print requests for a specific user. user-list can be one or more user names.
To specify multiple users with this command, use a space or a comma to separate user names. If you use spaces, enclose the list of names in quotation marks.
If you don't specify user-list, the status of print requests for all users is displayed.
When used to check the status of print requests, the lpstat command displays
one line for each print request.
From left to right, the line shows the following information:
Request ID
User
Output size in bytes
Date and time of the request,
Information about the request, such as “being filtered.”
Example 5-13 Checking the Status of Print Requests
The following example shows that user fred has one print request queued on
the printer luna.
$ lpstat
luna-1 fred 1261 Jul 12 17:34
The following example shows that the user paul currently has no print requests
in queue.
$ lpstat -u paul
The following example shows that two print requests are queued on
the printer moon.
$ lpstat -o moon
moon-78 root 1024 Jul 14 09:07
moon-79 root 1024 Jul 14 09:08
Enabling or Disabling a Printer From Printing
The enable and disable commands control whether a printer prints or stops
printing requests that are in the print queue. When you disable a printer,
the printer stops printing requests in the queue. However, requests are still added
to the queue. You must set the printer to reject print requests so
that requests are not added to the queue. For information about rejecting print
requests, see Accepting or Rejecting Print Requests.
A printer is enabled to print and accepts print requests when the
printer is added by using Solaris Print Manager. Solaris Print Manager doesn't provide any
additional printer processing management.
You must enable the printer whenever it has been disabled, which can happen
when a printer fault occurs. When you enable a printer, it prints
requests from the print queue until the queue is empty, even if the
print service rejects additional requests for the print queue.
The following figure shows the point at which the processing of print requests
is interrupted when a printer is disabled.
Figure 5-1 What Happens When a Printer Is Enabled or Disabled
How to Enable or Disable a Printer
- Log in as superuser, lp, or assume an equivalent role on the print
server.
- Stop printing print requests.
# disable [-c | -W] [-r "reason"] printer-name
- disable
Cancels the current job, then disables the printer. The current job is saved to reprint when the printer is enabled.
- -c
Cancels the current job, then disables the printer. The current job is not printed later.
- -W
Waits until the current job is finished before disabling the printer.
- -r "reason"
Provides users with a reason why the printer is disabled. The reason is stored and displayed whenever a user checks on the status of the printer by using the lpstat -p command.
- printer-name
Specifies the name of the printer that will stop printing print requests.
Note - You cannot enable or disable classes of printers. Only individual printers can be
enabled or disabled.
- Start printing print requests.
# enable printer-name
- Verify that the printer is enabled.
# lpstat -p printer-name
Example 5-14 Enabling or Disabling a Printer
The following example shows how to stop the current job on the
printer luna, save the job to print later, and provide a reason
why the printer has stopped printing print requests.
# disable -r "changing the form" luna
The following example shows how to start printing print requests on the printer
luna.
# enable luna
printer "luna" enabled
Accepting or Rejecting Print Requests
The accept and reject commands enable you to turn on or turn off
a print queue that stores requests to be printed.
When you use the reject command, the print queue for a specified printer
is turned off. No new print requests can enter the queue on the
print server. However, all print requests that are in the queue are still
printed. You must disable the printer if you want it to stop
printing requests that are already in the queue. The following table compares the
functions of the accept, reject, enable, and disable commands.
Table 5-7 Functions of accept, reject, enable, and disable Print Commands
Command |
Function |
accept |
Accepts print requests that are sent
to the print queue. |
disable |
Stops printing requests that are currently in the print
queue. |
enable |
Prints the requests that are in the print queue. |
reject |
Rejects print requests that
are sent to the print queue. |
If a print request is rejected, the LP print service writes or
mails a message to the user who submitted the request. the message states
that print requests are not being accepted for the specified printer.
You can also specify a reason for not accepting requests through the command
line. The reason is displayed on a user's system when a user
tries to check the printer's queue. The following figure shows the point at
which the processing of print requests is interrupted when a print queue rejects print
requests.
Figure 5-2 What Happens When a Print Queue Accepts or Rejects Requests
How to Accept or Reject Print Requests for a Printer
- Log in as superuser, lp, or assume an equivalent role on the print server.
- Stop accepting print requests for the printer.
# reject [-r "reason"] printer-name
- -r "reason"
Provides users with a reason why the printer is rejecting print requests. The reason is stored and displayed whenever a user checks on the status of the printer by using the lpstat -p command.
- printer-name
Specifies the name of the printer that will stop accepting print requests.
The queued requests continue printing as long as the printer is enabled. For
instructions on disabling a printer so that it stops printing, see How to Enable or Disable a Printer.
- Start accepting print requests for the printer.
# accept printer-name
- Check that the status of the printer to see whether it is accepting
or rejecting print requests.
$ lpstat -p printer-name
Example 5-15 Accepting or Rejecting Print Requests for a Printer
The following example shows how to stop the printer luna from accepting print
requests.
# reject -r "luna is down for repairs" luna
destination "luna" will no longer accept requests
The following example shows how to set the printer luna to accept print
requests.
# accept luna
destination "luna" now accepting requests
Canceling a Print Request
You can use the cancel command to cancel print requests in printer queues
or to cancel jobs that are printing.
Three are three ways to use the cancel command:
Cancel requests by request identification number (request ID)
Cancel requests from a specific user on all printers or specific printers
Cancel the job currently printing
When you use the cancel command, a message tells you the request or
requests are canceled, and the next request in queue is being printed.
You can cancel a print request only under the following conditions:
You are the user who submitted the request and you are logged in on the system from which you submitted the request.
You are the user who submitted the request on any client system and the print server has the “user-equivalence” option configured for the printer in its /etc/printers.conf file.
You are logged in as superuser, lp, or have assumed an equivalent role on the print server.
To cancel a specific request, you need to know its request ID.
The request ID contains the name of the printer, a dash, and the
number of the print request. For example, luna-185.
When you submit the print request, the request ID is displayed. If you
do not remember the print request ID, you can find it by using
the lpstat command with the -o printer option.
How to Cancel a Print Request
- If you are going to cancel the print requests of other users, then
become superuser, lp, or assume an equivalent role.
- Determine the request IDs of the print requests to cancel.
# lpstat
For more details, see How to Check the Status of Print Requests.
- Cancel the print request.
# cancel request-id | printer-name
- request-id
Specifies the request ID of a print request to be canceled. You can specify multiple request IDs with this command. Use a space or a comma to separate request IDs. If you use spaces, enclose the list of request IDs in quotation marks.
- printer-name
Specifies the printer for which you want to cancel the currently printing print request.
You can specify multiple printer names with this command. Use a space or a comma to separate printer names. If you use spaces, enclose the list of printer names in quotation marks.
- Verify that the print requests are canceled.
$ lpstat -o printer-name
Example 5-16 Canceling a Print Request
The following example shows how to cancel the luna-3 and luna-4 print
requests.
$ cancel luna-3 luna-4
request "luna-3" cancelled
request "luna-4" cancelled
The following example shows how to cancel the print request that is currently
printing on the printer luna.
# cancel luna
request "luna-9" cancelled
How to Cancel a Print Request From a Specific User
- (Optional) Become superuser, lp, or assume an equivalent role if you are going
to cancel the print requests of other users.
- Cancel a print request from a specific user.
$ cancel -u user-list [printer-name]
- -u user-list
Cancels the print request for a specified user.
user-list can be one or more user names. Use a space or a comma to separate user names. If you use spaces, enclose the list of names in quotation marks
- printer-name
Specifies the printer for which you want to cancel the print requests for a specified user.
printer-name can be one or more printer names. Use a space or a comma to separate printer names. If you use spaces, enclose the list of printer names in quotation marks.
If you don't specify the printer-name, the print requests for the specified user is canceled on all printers.
Example 5-17 Canceling a Print Request From a Specific User
The following example shows how to cancel all the print requests submitted by
the user george on the printer luna.
# cancel -u george luna
request "luna-23" cancelled
The following example shows how to cancel all the print requests submitted by
the user george on all printers.
# cancel -u george
request "asteroid-3" cancelled
request "luna-8" cancelled
Moving a Print Request
If you plan to change the way a printer is used or
decide to take a printer out of service, you should set up the
LP print service to reject additional print requests. Then, move or cancel any
requests that are currently queued to the printer. You can use the lpmove
command to move individual or all print requests to another local printer.
Request IDs are not changed when you move print requests, so users
can still find their requests. Print requests that have requirements, such as a specific
file content type or form, that cannot be met by the newly
specified printer cannot be moved. These print requests must be canceled.
How to Move Print Requests to Another Printer
To move all print requests from one printer to another printer, you do
not need to know the request IDs. However, first determine how many
print requests are affected before you move them.
- Log in as superuser, lp, or assume an equivalent role on the print
server.
- (Optional) Determine if the request IDs of the print requests on the original
printer.
# lpstat -o printer-name1
- (Optional) Check to see if the destination printer is accepting print requests.
# lpstat -a printer-name2
-a printer-name2 reports whether print destinations are accepting requests.
- Move all the print requests from the original printer to the destination printer.
# lpmove printer-name1 printer-name2
- printer-name1
Specifies the name of the printer from which all print requests will be moved.
- printer-name2
Specifies the name of the printer to which all print requests will be moved.
For more information, see the lpmove(1M) man page.
If some requests cannot be printed on the destination printer, the requests
are left in the original printer's queue. By using request IDs, you
can also move specific print requests to another printer by using the lpmove
command.
- (Optional) Start accepting print requests on the original printer.
If you move all the print requests to another printer, the lpmove command
automatically stops accepting print requests for the printer. This step is necessary if
you want to begin accepting new print requests for the printer.
# accept printer-name1
- Check for any remaining print requests in the original printer's queue.
# lpstat -o printer-name1
Ensure that all specified print requests were moved to the destination printer's queue.
# lpstat -o printer-name2
Example 5-18 Moving Print Requests to Another Printer
The following example shows how to move print requests from the printer
luna to the printer terra. Then, the original printer, luna, is instructed to
resume accepting print requests.
# lpmove luna terra
# accept luna
Changing the Priority of Print Requests
After a user has submitted a print request, you can change its
priority in the print server's queue by doing any of the following:
Putting any print request on hold if it has not finished printing. Putting a request on hold stops the request, if it is currently printing, and keeps it from printing until you resume printing it. Other print requests go ahead of the on-hold request.
Moving any print request to the head of the queue, where it will become the next job eligible for printing. If you want a job to start printing immediately, you can interrupt the job that is currently printing by putting it on hold.
Changing the priority of a job still waiting to be printed or moving the job in the queue. Doing so will move the job ahead of lower priority requests and behind other requests that are the same priority or higher priority.
How to Change the Priority of a Print Request
- Log in as superuser, lp, or assume an equivalent role on the print server
that is holding the print request.
- Determine the request IDs of the print requests whose priority you want to
change.
# lpstat
For more information, see How to Check the Status of Print Requests.
- Change the priority of a print request.
# lp -i request-id -H change-priority
- -i request-id
Specifies the request ID of a print request you want to change.
You can specify multiple request IDs with this command. Use a space or a comma to separate request IDs. If you use spaces, enclose the list of request IDs in quotation marks.
- -H change-priority
Specifies one of the three ways to change the priority of a print request: hold, resume, immediate.
For detailed information about valid values for change-priority, see Table 5-6.
You can also use the lp -q command to change the priority level
of a specified print request. You can change the priority level from 0,
the highest priority, to 39, the lowest priority.
Example 5-19 Changing the Priority of a Print Request
The following example shows how to change a print request with the
request ID asteroid-79, to priority level 1.
# lp -i asteroid-79 -q 1