System Administration
Showing results for 
Search instead for 
Did you mean: 

Re: HP LAserjet 4250 -document not printing

Occasional Advisor

HP LAserjet 4250 -document not printing

I added HP Laserjet 4250 using /usr/sbin/lpadmin -ptest3 -v/dev/null -mrmodel -ormtest3 -orptest3 -ocmrcmodel

the document got printed but it's not printing landscape style.

I tried added the laserjet model instead of the default one and used
/usr/sbin/lpadmin -ptest4 -v/dev/null -mlaserjet4 -ormtest4 -orptest4 -ocmrcmodel

Now the log file shows the document is sent to the printer but i actually dont see the physical copy of the document at the printer.

Any ideas what the reason and how to solve this?
Honored Contributor

Re: HP LAserjet 4250 -document not printing

/usr/sbin/lpadmin -ptest3 -v/dev/null -mrmodel -ormtest3 -orptest3 -ocmrcmodel

This uses the LPR/LPD remote printer protocol (RFC 1179). This protocol assumes it's printing to another Unix system, which can do any final formatting required by the actual printer. This is why generic "remote" model script is used.

>/usr/sbin/lpadmin -ptest4 -v/dev/null -mlaserjet4 -ormtest4 -orptest4 -ocmrcmodel

To understand why this didn't work, you'll need to know a bit about how a traditional Unix print spooler works.

Originally, the Unix print spooler system dealt with local printers only. It allowed the use of filter programs to modify the print jobs, but eventually the result was piped into some device file (a parallel port, or a serial port/MUX device).

Remote printing was added to some traditional spoolers through the filter functionality: a special filter binary was written to send the output to a remote spooler instead of doing any local filtering at all. Because the spooler still expects a device name, /dev/null was used as the device.

The "remote printer" functionality on HP-UX print spooler still works as described above. When you replaced the "-mrmodel" with "-mlaserjet4", you replaced the special remote printing filter with an ordinary LaserJet 4 printing filter. This filter only adds & modifies some printer control sequences (as per print job options) and then lets the job pass on to the device specified in the spooler configuration... which, in your case, is /dev/null so the formatted print job won't actually print on any printer.

For printing to network-attached HP printers from HP-UX, a better solution would be to install the HPPI (HP Network Printer Installer):

It enables a new type of print queue: "Network Printer". It allows you to use model scripts with network-attached printers.

You can also download a specific model script for LaserJet 4250 from HP: