University Systems --> LPCR - Print Accounts --> --> LPCR Information for Faculty --> qdev -->

qdev

qdev [-deflrs] [devices ...]


Description

see also the qdev man page.

What is it used for?

qdev can be used to disable or enable a printer. e.g. Wks or first aiders often disable a printer when the toner is too low so that jobs will get sent to the other printer in the lab.

double headed queue digression:

Many of the wam labs have double headed queues. This means that the mdqs spooler will take jobs sent to one queue, e.g. pg2, and send them to either device that is used for that queue, either pg2-hp1 or pg2-hp2.

a disable/enable scenario: pg2-hp1 has a paper jam. Use qdev -d pg2-hp1 to disable it. While it is disabled, jobs will get sent to pg2-hp2. If you didn't disable it, jobs sent to pg2-hp1 would encounter an error, be delayed, and requeued. This eats time and resources on neobank, also causing a delay for the user.

The qdev output can also provide useful information about a printer. The status field will either display (Idle) or have information about the current status of the printer as a job is processed. This may give clues as to why a printer isn't printing, whether a job is causing an error message, etc.

Options descriptions/example output

Default printing behavior

qdev looks at $PRINTER to determine which spooler to connect to. If $PRINTER is not set it tries to connect to the local host. qdev gives device statuses for devices spooled from that spooler.

A full list is rather lengthy, but a few examples will do.

hornbake-hp1   *Empty*  (Idle)
hornbake-hp2   *Empty*  Q00017.14241    11540 (Trying to open session to hornbake-hp2.wam.umd.edu/9100)

-s devname

Use the -s option to get device information for a specific device

prompt:~% qdev -s hornbake-hp1
hornbake-hp1   *Empty*  Q00017.14268    11563 (File untitled completed)
prompt:~% 

-d devname

disable device

-e devname

enable device

-r devname

clear printer, requeue current job

-f devname

clear printer, flush (delete) current job. An example of when to use this:

neobank:~% qstat -l
Dev/Que   Request    User              File           Pri Size Submitted
Active Devices:
epsl-hp2  mdqs.24899 mac06epsl@mac06ep ¥SetA.nb        64 1582k Feb  5 12:46
hornbake-hp2 mdqs.27540 root@localhost    s not a title.  64  13k Feb  9 11:24
omse-hp1  mdqs.27539 LAB1101@omse-08.u is Is a Title.  64  20k Feb  9 11:24
wor-hp1   [disabled]
wor-hp2   mdqs.27538 root@localhost    s not a title.  64  70k Feb  9 11:23
chem-lw1  mdqs.27303 Chemistry_OWL_Use edule Printout  64  45k Feb  9 09:35

Queued Requests:
epsl      mdqs.24899 mac06epsl@mac06ep ¥SetA.nb        64 1582k Feb  5 12:46
hornbake  mdqs.27540 root@localhost    s not a title.  64  13k Feb  9 11:24
omse      mdqs.27539 LAB1101@omse-08.u is Is a Title.  64  20k Feb  9 11:24
wor       mdqs.27538 root@localhost    s not a title.  64  70k Feb  9 11:23
chem      mdqs.27303 Chemistry_OWL_Use edule Printout  64  45k Feb  9 09:35

Delayed Requests:

The job going to epsl needs to be killed becuase it's four days old. One would not use qmod -k on it because it's already being sent to the printer. Instead, use qdev -f epsl-hp2.

neobank:~% qdev -f epsl-hp2
Q00017.24899 flushed (PID 27334)
How do I:
How are we doing? Comments on this page?
Office of Information Technology
Office of Information Technology Help Desk Web Site University of Maryland Web Site Office of Information Technology Web Site