-->
When used without any arguments, lpc prompts you for a command. The following are several valid lpc commands and their arguments (a vertical bar indicates a choice of arguments):
- abort printer_name| all This is similar to the stop command except it doesnt allow any print job that is currently being printed to finish before stopping the printer. When used with the all argument, all printers are stopped. Any job that is abnormally terminated by the abort command is requeued when the printer is started again. See the stop command for more details about the printer daemon and lock files.
- clean printer_name| all This removes all print jobs that are queued, including any active print jobs. In many cases, the currently printing job proceeds normally because it has been passed to the printer daemon or the printers buffer. All other jobs are removed, though. If the all argument is used, all printers have their print queues cleaned.
- disable printer_name| all This disables the spooling of print requests to the printer (or all printers, depending on the argument). Any jobs that are already queued are unaffected. Any user trying to send a print job to the disabled printer receives a message indicating that the printer is disabled and the print job is refused. Printers are enabled and disabled through changes in the lock file in the spool directory.
- down printer_name message This is used to take a printer completely offline, usually for an extended period. If a message is included, it can be as long as you want. It is placed in the status file in the spool directory and displayed to users trying to queue to the printer. The down command is usually used when a printer has serious problems and must be removed from the system for more than a day.
- enable printer_name| all This enables the spooling of print requests to the printer or all printers.
- exit This exits from lpc (the same as quit).
- help or? This shows a short list of all lpc commands. If an argument is supplied, it displays a one-line description of that command (such as help abort).
- quit This exits from lpc (the same as exit).
- restart printer_name| all This restarts the printer daemon and is usually used after the printer daemon has died for an inexplicable reason (which the BSD printer daemons tend to do). If the argument all is supplied, all printer daemons are restarted.
- start printer_name This starts the printer, allowing it to print requests. This command starts the printer queue daemon for that printer.
- status printer_name This displays the printer name, whether it has the spool queue enabled, whether printing is enabled, the number of entries in the print queue, and the status of the daemon for that printer. If there are no entries in the queue, no printer daemon will be active. However, if there are entries in the queue and the printer daemon shows as no daemon present, the daemon has died and must be started again with the restart command.
- stop printer_name This stops the printer. Print requests can still be spooled, but they are not printed until the printer is started. If a job is being printed when the stop command is issued, the job completes the print process and then stops printing. The start and stop commands alter the contents of the lock file in the print spool directories. The stop command also kills the daemon for spooling to that printer.
- topq printer_name print_ID This moves the print request with print_ID to the top of the print queue.
- topq printer_name username This moves all print requests owned by username to the top of the queue. (This is very handy for system administrators who dont want to wait!)
- up printer_name This is used to reactivate a printer that was taken down. See the down command for more information.
The lpc utility isnt very user-friendly, but its the only way to handle printers and their queues in Linux. Several front-end menu-driven utilities are beginning to appear that simplify this task.