The lpc command is the main way that the lpd server is controlled. Here is the help information displayed by the command:
h4: {308} % lpc -=
lpc: Illegal option '='
usage: lpc [-Ddebuglevel][-Pprinter][-Shost][-Uusername][-V] [command]
with no command, reads from stdin
-Ddebuglevel - debug level
-Pprinter - printer or printer@host
-Shost - connect to lpd server on host
-Uuser - identify command as coming from user
-V - increase information verbosity
commands:
active (printer[@host]) - check for active server
abort (printer[@host] | all) - stop server
class printer[@host] (class | off) - show/set class printing
disable (printer[@host] | all) - disable queueing
debug (printer[@host] | all) debugparms - set debug level for printer
down (printer[@host] | all) - disable printing and queueing
enable (printer[@host] | all) - enable queueing
hold (printer[@host] | all) (name[@host] | job | all)* - hold job
holdall (printer[@host] | all) - hold all jobs on
kill (printer[@host] | all) - stop and restart server
lpd (printer[@host]) - get LPD PID
lpq (printer[@host] | all) (name[@host] | job | all)* - run lpq
lprm (printer[@host] | all) (name[@host]|host|job| all)* - run lprm
msg printer message text- set status message
move printer (user|jobid)* target - move jobs to new queue
noholdall (printer[@host] | all)- hold all jobs off
printcap(printer[@host] | all) - report printcap values
quit - exit LPC
redirect(printer[@host] | all) (printer@host | off )* - redirect jobs
redo (printer[@host] | all) (name[@host] | job | all)* - redo jobs
release (printer[@host] | all) (name[@host] | job | all)* - release jobs
reread (printer[@host]) - LPD reread database information
start (printer[@host] | all) - start printing
status (printer[@host] | all) - status of printers
stop (printer[@host] | all) - stop printing
topq (printer[@host] | all) (name[@host] | job | all)* - reorder job
up (printer[@host] | all) - enable printing and queueing
diagnostic:
defaultq - show default queue for LPD server
defaults - show default configuration values
client (printer | all) - client config and printcap information
server (printer | all) - server config and printcap
Most of the lpc command line options are common to all LPRng Clients, with the exception of the -S server literal. This option allows the lpd host to be explicitly specified.
The lpc commands can be classified as informational, queue management, problem management, job scheduling, and diagnostic.
The lpc status command displays the current status of various activities of interest to the system administrator. This information includes the process ID of the server and other processes.
During normal operation, when requested for job status information the lpd server will create this information and then save it in a status cache. When successive requests for the same information arrive, the cache is checked to see if the information is already in the cache and there have been no status changes. If this is the case, the cached status information is used. The lpc flush command will flush (delete) this cache information and cause the lpd server to regenerate it from the original job files.
The lpc active command connects to the print server and gets the Process ID of the lpd process. This is useful to determine if the lpd server is running on the print server.
The reread command connects to the lpd print server and requests that the server reread the printcap, lpd.conf, and lpd.perms database files.