stop vs. cupsdisable

Kurt Pfeifle kurt.pfeifle at infotec.com
Fri May 18 02:59:55 PDT 2007


> > Hello all.
> >
> > I'm a bit confused about the use of reject and cupsdisable. These
> > commands are almost identical in functionality except that one deals
> > with print jobs and the other, the physical printer itself but both
> > affects the print jobs.
> >
> > Reject:
> > When a printer queue is set to reject, my understanding is the printer
> > will complete its current print job and subsequent jobs are simply
> > discarded and never queued up. When I say complete, I mean if there's
> > a 5Mb file being printed and the printer has not yet received all data and in the middle of printing and receiving data from the server, you
> > set the printer queue to reject, the printer will continue to
> > receive/print until it has completely received all data from the
> > server and printed everything for that current job. True or False?
>
> Not correct.
>
> "Reject" switches cupsd into a mode that rejects any new job to enter the queue. (And the user should see a message that his job was rejected...) Previous jobs which are already queued will continued to be processed and printed until the queue is completely empty.
>
>
> > Cupsdisable:
> > When a printer queue is set to disable, the printer will halt its
> > current print job, placed the job back in queue, and stop printing
> > immediately. Subsequent printjobs will be kept in queue. Whe you start
> > the printer again, the printer will start printing from the last job
> > before it was stopped. True or False?
>
> Correct.
>
>
> Maybe a model helps explain it better:
>
> * The printjob queue is a long tube which has to be passed by each job.
>
> * The tube is all in CUPS' realm, and has nothing to do with the physical printer. The physical printer is located behind the tube's exit.
>
> * The tube has two shutters, one on each end.
>
> * Each shutter can be opened or closed independently from the other one.
>
> * If both shutters are open, the jobs get processed normally.
>
> * If the exit shutter is open, all queued jobs get processed until the tube is empty; processing includes being sent off to the physical printer.
>
> * If the entrance shutter is open, new new jobs can enter the tube.
>
> * If the entrance shutter is closed, no new new jobs can enter the tube any longer.
>
> * If the exit shutter is closed, the current jobs stay waiting in the tube (until the shutter opens again, or until they are flushed into the "delete" sink).
>
> * The shutters are operated by users with administrative privileges.
>
>   ==> The entrance shutter is switched into open or closed mode with the "accept" and the "reject" commands.
>
>   ==> The exit shutter is switched into open/closed with "cupsenable"/"cupsdisable".


Actually, my last part is not entirely correct with some little details, and is incomplete with regard to the web interface.

 * the commandline utilities to operate the entrance shutter may be
   "cupsaccept" and "cupsreject" on some distros.

 * the commandline utilities to operate the exit shutter may be
   "enable" and "disable" for 1.1.x versions of CUPS (and use the
   full path /usr/bin/enable to avoid confusion with the Bash builtin
   "enable" command).

 * the '*accept' and '*reject' commands map to the "Accept Jobs" and
   "Reject Jobs" buttons in the CUPS web interface (entrance shutter).

 * the '*enable' and '*disable' commands map to the "Stop Printer" and
   "Start Printer" buttons in the CUPS web interface (exit shutter).

That last part may indeed be confusing to users (shell commands containing "enable" and "disable" map to "start"/"stop" in the web interface; at least the "accept"/"reject" commands do map to the same words in the web interface).





More information about the cups mailing list