lpc

 


LPC(1)                                                     LPC(1)



NAME
       lpc - line printer control program

SYNOPSIS
       lpc [ -A ] [ -a ] [ -Ddebugopts ] [ -Pprinter ] [ -Sserver
       ] [ -Uusername ] [ -V ] [ command [ argument ... ] ]

DESCRIPTION
       Lpc is used by the system  administrator  to  control  the
       operation  of  the  line  printer  system.   For each line
       printer configured in /etc/printcap or the printcaps spec­
       ified    in   the   configuration   file   lpd.conf   (see
       lpd.conf(5)), lpc may be used to:

       ·  disable or enable a single or all printer,

       ·  disable or enable a single printer's or  all  printer's
          spooling queue,

       ·  move jobs to the top a queue

       ·  find  the  status  of  printers,  and  their associated
          spooling queues and printer dameons,

       ·  start and stop printer servers for a queue with  multi­
          ple print servers,

       ·  hold and release a specific job in a printer queue,

       ·  redirect printing to another printer,

       ·  restart a printer job after having solved printer prob­
          lems and let it print from the beginning,

       ·  reprint a job

       Without any arguments, lpc will prompt for  commands  from
       the standard input.  If arguments are supplied, lpc inter­
       prets the first argument as a command  and  the  remaining
       arguments as parameters to the command.  Permission to use
       spool queue control commands is determined by the  printer
       permissions file (See FILES).

OPERATION
       The  operation  of  each  spool  queue  is controlled by a
       spoolcontrol file which has a set of keyword  options  and
       values.   (Other print spoolers have used permissions bits
       of directories and files for similar purposes).  In  addi­
       tion,  each  job  in  the  spool queue can have a holdfile
       which contains detailed information on how the spooler  is
       to treat the particular job.  The server will update these
       files with status and other information as the job is pro­
       cessed.   The  lpc command operates by sending requests to
       the lpd server process to update the information in  these
       files  and to signal server processes that the information
       has been updated.

OPTIONS
       -A   Use authentication specified by the value of the AUTH
            environment variable.

       -a   Alias for -Pall.

       -Pprinter
            Printer  spool  queue  to  operate on.  if no name is
            given, the -P option, the  printer  selected  by  the
            value  of  the  PRINTER  enviroment  variable, or the
            first entry in the printcap file will be used.   When
            all printers are selected, the LPC command will first
            attempt  to  find  the  printcap  entry  for  printer
            ``all'';  the all printcap field value will be a list
            of printers to control.   If  there  is  no  printcap
            entry,  then the request is directly forwarded to the
            default LPD host, which will do a lookup for  all  of
            the  available printers.  By specifying ``all@host'',
            the user can control all printers on a given host.

       -Sserver
            Send commands to this server,  rather  than  the  one
            specified  by the -Pprinter" or printcap entry.  This
            allows you  to  use  a  default  printcap  entry  for
            authentication  information  or  other setup informa­
            tion, but direct queries to a specific server.

       -V   Print program version information

       -Uusername
            Set the user name for the request.   This  option  is
            available  only to user root or to the userids listed
            in the allow_user_setting configuration option.

       -Ddebugopts
            Debugging is controlled using  the  -D  option.  This
            accepts a comma-separated list of debugging settings.
            These settings take one of two forms:  facility=value
            , or value to set an overall default value.  The form
            -D= will display a list of debugging options.

COMMANDS
       The following is the alphabetical list of recognized  com­
       mands.   The  jobcontrol  or holdfile fields effective are
       listed as part of the command.

       ?
              Help.  Also, any unrecognized input produces a help
              listing.

       active [pr@[host]]
              makes a connection to the LPD server for the speci­
              fied printer.  Closes the connection  after  making
              it.   This  is useful for checking to see if a non-
              LPRng server is active.

       abort { all | printer* }
              Kill the active job and disables  unspooling.   The
              active job will not be deleted from the queue.
              Action: kills server process, updates spool control
              file printing_disabled field.

       class {all | printer } (off | classlist | X=globmatch)
              Controls the class of jobs currently being printed.
              The off option removes any class restrictions.  The
              classlist option is a list of classes; for  example
              A,B,C  would release classes A, B, and C for print­
              ing.  The X=globmatch form performs a match against
              a  control  file  entry starting with the indicated
              capital  letter.   For  example,   J=*form1*  would
              allow  jobs which had the string form1 in their job
              title to be printed.

       defaultq
              Lists the default queue for the LPC program.

       defaults
              Lists default values for the configuration informa­
              tion.

       debug j all | printer } [string | off ]
              Set the debugging string for the specified printer.
              This is a diagnostic aid and should  be  used  with
              caution;  refer to the reference manual for details
              of the debugging string format.   In  general,  you
              can use:
              INTEGER  -  the  integer  number  sets  the general
              debugging level
              keyword=value
              - sets a debugging variable to a specified value
              keyword - sets a debugging flag
              Action: updates spool control file debug field.

       disable { all | printer }
              Disable spooling to  the  specified  spool  queues.
              See enable.
              Action:  updates  spool  control file printing_dis­
              abled field.

       down {all | printer }
              Disable both queuing and printing for all  printers
              or the selected printer.  See up.
              Action:  updates  spool  control file printing_dis­
              abled and spooling_disabled fields.

       enable { all | printer }
              Enable spooling for all printers  or  the  selected
              printer.
              Action:  updates  spool  control file spooling_dis­
              abled field.

       exit or quit
              terminate LPC program

       help
              Print a short help message.

       hold printer { jobid }
              Holds the specified printer job (or  jobs)  in  the
              queue.   The job will not be printed even if spool­
              ing and printing is enabled. It  must  be  released
              with  the  relase  command.  The holdall command or
              :ah: printcap flag can enable automatic holding  of
              spooled jobs.
              Action:  updates  job holdfile hold field with time
              that job was held.   A  0  value  release  job  for
              printing.

       holdall { all | printer* }
              Turn  on  automatic  job  holding of new jobs.  New
              jobs  will  be  marked  as  held,  and  held  until
              released  with  the  release command.  This will be
              done until holdall is turned off with the noholdall
              command.   The  :ah: printcap flag can enable auto­
              matic holding as well.
              Action: updates spool control file holdall field.

       kill { all | printer ... }
              Do an abort command followed by  a  start  command.
              This  is  a quick way to kill off a server that has
              problems.  Note that due  to  race  conditions  and
              delays, that the start command may not be effective
              this action should be monitored to ensure that  the
              job restarts.

       client { all | printer ... }
              Show  the  LPRng  client configuration and printcap
              information  on  the  local  host.   This   is   an
              extremely useful diagnostic tool.

       lpd [printer@[host]]
              determines  if  LPD  daemon  process  on  the print
              server is running, and gets the PID.  This is handy
              to  determine  if  the  LPD  daemon  was  killed or
              aborted due to abnormal conditions.

       lpq printer [options]
              Run lpq from inside the lpc program.

       lprm printer jobid [jobid]*
              Run lprm from inside  the  lpc  program.   Not  all
              options  are  supported  -  this  form requires the
              printer name and jobid to be specified  explicitly.

       move printer { jobid }  destinationPrinter
              Send  the specified jobs to the destination printer
              and remove them from the printer queue.
              Action: updates the job holdfile  move  field  with
              the  destination  and starts a server process to do
              the job transfer.

       msg printer message text
              Update the status  message  for  the  printer.   An
              empty message will remove the status message.

       noholdall { all | printer* }
              Turn  off  automatic job holding.  See holdall com­
              mand.

       quit or exit
              terminate LPC program

       redirect [printer [destinationPrinter | off ]]
              redirect the jobs in the printer queue  to  another
              printer or turn redirection off.
              Action:  updates spool control file redirect field.

       redo [printer [jobid]]
              Reprint the selected job.

       release [printer [jobid]]
              Releases the selected job for printing.

       reread [ printer [@host] ]
              Sends a request to the LPD server for  the  printer
              to  reread  the configuration and printcap informa­
              tion.   This  is  equivalent  to  using  kill  -HUP
              serverpid,  but  can  be done for servers on remote
              hosts.

       server { all | printer }
              Shows the printcap entries for the printer  or  all
              printers as the LPD server would use them.

       start { all | printer }
              Start the printer.  This is useful when some abnor­
              mal condition causes the server to terminate  unex­
              pectedly  leaving  jobs  in  the  queue.   Lpq will
              report that there is no daemon  present  when  this
              condition occurs.

       status { all | printer }
              Display  the  status  of  daemons and queues on the
              local machine.

       stop { all | printer }
              Disable any further unspooling  after  the  current
              job completes.

       topq printer [ jobid ]
              Place  the  selected jobs at the top of the printer
              queue.

       up {all | printer ...}
              Enables queuing and printing for the  specified  or
              all printers.  Privileged.

JOBIDS
       The  LPQ  command  displays a job identifier for each job,
       which can be used in LPC commands to identify  a  specific
       job.  In the commands descriptions above, the jobid can be
       a user name, a job number, a job  identifier,  or  a  glob
       pattern.   The  glob  pattern  is  matched against the job
       identifier.  In command which have an optional  jobid,  if
       none  is  specified  then  the  first printable job in the
       queue is acted on.

FILES
       The files used by LPRng are set by values in  the  printer
       configuration file.  The following are a commonly used set
       of default values.
       /etc/lpd.conf                                LPRng configuration file
       /etc/printcap                                printer description file
       /etc/lpd.perms                               printer permissions
       /var/spool/printer*                          spool directories
       /var/spool/printer*/printer                  lock file for queue control
       /var/spool/printer*/control.printer          queue control
       /var/spool/printer*/active.printer           active job
       /var/spool/printer*/log.printer              log file

SEE ALSO
       lpd.conf(5), lpd(8), checkpc(8), lpr(1), lpq(1),  lprm(1),
       printcap(5), lpd.perms(5), pr(1).

DIAGNOSTICS
       Most of the diagnostics are self explanatory.
       If you are puzzled over the exact cause of failure,
       set the debugging level on (-D5) and run again.
       The debugging information will
       help you to pinpoint the exact cause of failure.

HISTORY
       LPRng  is a enhanced printer spooler system with function­
       ality similar to the Berkeley  LPR  software.   The  LPRng
       mailing list is lprng@lprng.com; subscribe by sending mail
       to lprng-request@lprng.com with the word subscribe in  the
       body.       The     software     is     available     from
       ftp://ftp.astart.com/pub/LPRng.

AUTHOR
       Patrick Powell <papowell@lprng.com>.



LPRng                      LPRng-3.7.4                     LPC(1)