Serving NT4 print drivers from Samba

T. William Schmidt wschmidt at starband.net
Fri Sep 14 18:10:03 GMT 2001


Hello fellow Samba users,

I am attempting to serve NT4 printer drivers from a Samba 2.2.0 server 
running on AIX 4.3.2.  I have configured my smb.conf per the 
PRINTER_DRIVER2.txt and while I can indeed deliver drivers to NT4 clients 
via the APW, the user interaction is not the same as with a real NT4 print 
server.  First is a fragment from my smb.conf relevant to print$ share and 
a target printer: (Note: the case I use in the email is the exact case of 
all names in the .conf or in the file system)

[print$]
         path = /usr/local/samba/shares/drivers
         read only = yes
         browseable = yes
         guest ok = yes
[EngrSDPS]
         printing = BSD
         printer = misprt7
         print command = /usr/bin/rm -f /tmp/printlog; /usr/bin/cat %s > \
                 /tmp/printlog
         path = /usr/local/samba/shares/officedocs/corp
         guest ok = yes
         printable = yes
         printer driver = HP DesignJet 750C/PS
         min print space = 4000


I have created the directory structure /usr/local/samba/shares/drivers/W32X86
and populated it with the drivers for this specific HP printer.  All 
directories are either mode 755 or 777 and the 4 driver files are mode 644.

Assume the netbios name of the server is stuff.  When I attempt to define 
\\stuff\EngrSDPS with the APW the error window appears that announces that 
the print server does not have a valid driver for an HP DesignJet 750C/PS 
printer installed.  Do you want to install a driver?

When I elect to install I pick HP, then HP DesignJet 750C/PS from the lists 
presented in the APW that are derived from ntprint.inf.  When the APW asks 
for media I can enter \\stuff\print$ in the browse window and drill down 
into W32X86 and select HP_750_1.PPD and the APW finishes the install 
correctly, including the three other required files I am serving, namely { 
PSCRIPT.DLL, PSCRIPT.HLP, PSCRPTUI.DLL }.  The drivers are absolutely 
correctly installed and I can print Word docs from NT4 using the EngrSDPS 
definition and I can capture the spooled files and they are indeed 
Postscript.  BTW:  This project is not meant to really print to an HP 
printer but its purpose is to capture the spooled files for post-processing 
through Acrobat Distiller server to produce PDF versions.  We are doing 
DOC->PS->PDF for web serving compound documents to non-Windows 
clients.  That particular driver is one of a number we are testing.  All of 
this works as advertised except that the user must browse the driver share 
and navigate down until he finds the driver to complete the 
installation.  What I want is for the APW to correctly detect that the 
driver is present in print$ and grab it and all of its dependent files just 
the way it would and does with a real NT4 print server.  I don't want the 
users to see anything different when they define this printer than they do 
with the hundreds of other printers we make available on our net.  They 
should not even know about print$.

Either my smb.conf is incorrect or I am expecting too much from this 
release and the former is the more likely.  My next approach is to go into 
the source for spoolss and see if I can learn more about the interaction of 
smbd with the APW.  I have also tried changing the path = expression to:

path = /usr/local/samba/shares/drivers/W32X86   but the results are the same.

Can anyone shed any light on this unexpected behavior?  I think the 
dialogue should be transparent to the user and while with the proper 
instruction the printer will get defined, it is not as friendly as we would 
like it to be.

Thanks in advance for your help.  What a superb piece of craftsmanship is 
Samba. :-)

Regards,
Will Schmidt
SW Engineer/Consultant
Kipe & Associates       currently on assignment @ Freightliner LLC
Portland, OR
(541) 462-3160
(541) 462-3899 fax
-------------- next part --------------
HTML attachment scrubbed and removed


More information about the samba mailing list