What do I do if I see a network printer spewing pages of garbage characters?
Last revision November 16, 2004
Pulling out the paper tray will stop the carnage (of gibberish on paper) and power cycling the printer will clear its memory, but the computer that is sending the garbage file will continue to try to print its garbage again when it notices that its connection to the printer was broken.
To really stop the garbage, you need to find out which computer is sending it and cancel the print job there.
If the print job is coming from pangea or one of the Unix computers or Windows computers that print via pangea, then you will have to stop the queue on pangea or it will try over and over again ad nauseum. If the job is coming directly from a Macintosh or Windows computer, then you have to find that guy and cancel on his/her computer. Programs on pangea will let you find the source in most cases. You have to run them from a command-line (terminal) login to pangea.
So, when you see gibberish coming out of the printer:
- Pull out the paper tray.
- Let the printer print out the remaining sheets of paper already fed into the printer.
-
Leave the printer on with the paper tray out.
Login to pangea
using your
pangea account.
Run this command to see if the job is coming from pangea:
lpq -Pqueuename
Be sure to substitute the actual pangea queue name of the printer for the string queuename in the command above. Do not put any spaces between the -P and the queue name. For example, if the printer you are checking has the pangea queue name a65-laserjet, use the command
lpq -Pa65-laserjet
If the job is coming from pangea, you will get a response that looks something like this:
job: pangea.Stanford.EDU:badguy;
status: PrinterError: paper tray missing;
source: EtherTalk
Rank Owner Job Files Total Size
active badguy 776 garbage_file 15175 bytesIn this case, you must stop the queue on pangea or it will try to print over and over. Just run this command to stop the queue:
op lpc abort queuename
Again, substitute the real pangea printer queue name for queuename.
Now the job must be removed from the queue. This takes system manager privilege if the job does not belong to you. If the jobs is yours, delete it by running this command:
lprm -Pqueuename jobnumber
substituting the real pangea printer queue name for queuename and the job number from the lpq command that you already ran (above).
So, for example, if you are "badguy" who submitted the "garbage_file" print job number 776 to the a65-laserjet queue in the example above, you can delete it with the command:
lprm -Pa65-laserjet 776
If you do not own the offending job, then send email to the system managers and ask them to remove the offending job from the print queue. Now skip to the last step.
-
If the offending job is not coming from pangea (the
lpq
command gives a result like
no entries),
then run this command on pangea to query the printer over the network:
printerstatus queuename
Again, substitute the real pangea printer queue name for queuename. This command will work for any printer that pangea can access via AppleTalk (the vast majority). If it meets that criterion, you will likely get a response like this:
abInit: [ddp: 0.207, 4], [GW: 0.207, 177] starting
Looking for Rm 410 LW 16/600:LaserWriter@ES-Mitchell-4th ...
---job: Badguy Mac;
status: PrinterError: paper tray missing;
source: EtherTalk\0
Address confirmed for socket 129The AppleTalk name of the computer sending this job is listed right after ---job:. You have to hope that everyone names their Macintosh (or Windows with AppleTalk software) computer with a sensible name so you can track down this person and cancel the print job on his/her computer.
- If you can't figure out which computer is sending the print job, contact the system managers.
- Only after you have found where the job is coming from and canceled it there, you should now turn the printer off, wait a few seconds, put the paper tray back in, and turn it on again.