Raw Print Serving: Vendor Drivers on Windows Clients
Most traditionally configured UNIX print servers acting on behalf of
Samba's Windows clients represented a really simple setup. Their only
task was to manage the “raw” spooling of all jobs handed to them by
Samba. This approach meant that the Windows clients were expected to
prepare the print job file that is ready to be sent to the printing
device. In this case, a native (vendor-supplied) Windows printer driver needs to
be installed on each and every client for the target device.
It is possible to configure CUPS, Samba, and your Windows clients in the
same traditional and simple way. When CUPS printers are configured
for raw print-through mode operation, it is the responsibility of the
Samba client to fully render the print job (file). The file must be
sent in a format that is suitable for direct delivery to the
printer. Clients need to run the vendor-provided drivers to do
this. In this case, CUPS will not do any print file format conversion
The easiest printing configuration possible is raw print-through.
This is achieved by installation of the printer as if it were physically
attached to the Windows client. You then redirect output to a raw network
print queue. This procedure may be followed to achieve this:
Procedure21.1.Configuration Steps for Raw CUPS Printing Support
/etc/cups/mime.types to uncomment the line
near the end of the file that has:
Do the same for the file
Add a raw printer using the Web interface. Point your browser at
https://localhost:631. Enter Administration, and add
the printer following the prompts. Do not install any drivers for it.
Choose Raw. Choose queue name
[printers] section add
use client driver = Yes,
and in the
[global] section add
printing = CUPS, plus
printcap = CUPS.
Install the printer as if it is a local printer, that is, Printing to
Edit the configuration under the
tab and create a
local port that points to the raw printer queue that
you have configured above. Example:
Here, the name
raw_q is the name you gave the print
queue in the CUPS environment.