[ Previous | Next | Table of Contents | Index | Library Home | Legal | Search ]

Guide to Printers and Printing

Copying Spooled Jobs

Particularly in a remote spooling environment, it can be useful to make a copy of a spooled print job. When a job is submitted to the spooler, a job description file (JDF) is created and stored in /var/spool/lpd/qdir. If the queue is a remote queue, with something like rembak as the backend, the job will be transferred to the print server, where enq will make another JDF and put the job onto the specified print server queue.

If jobs seem to be vanishing at the print server, disable the print server queue (disable asc, for the ASCII queue example), and resubmit the job. Since the asc is down, lpstat should show the job as queued, but the queue will be DOWN and so the job will just sit there. Look in /var/spool/lpd/qdir for the JDF for this job. The last line of the JDF is the full path name to the spooled copy of the input data stream. Copy that file to some temporary file, such as /tmp/myfile. When you copy the file, you lose all of the flags that were associated with the job; all you are copying is the input data stream itself.

Enable the asc queue (enable asc) and allow the job to be processed. If it vanishes, submit the copy you made (enq -Pasc /tmp/myfile). If this job also vanishes, then you need to examine the input datastream for errors, as the printer for some reason does not want to print it. If the copy prints, then you probably have a problem with flags associated with the original job.

[ Previous | Next | Table of Contents | Index | Library Home | Legal | Search ]