[Samba] Fail to "Connect to printer"

Vizitiu, Ciprian CVizitiu at gbif.org
Wed Apr 9 13:13:03 GMT 2003


> 
> >         flags:[0x800000]
> >         name:[\\ka\IBM Infoprint 1222]
> >         description:[\\ka\IBM Infoprint 1222,,IBM Infoprint 1222]
> >         comment:[IBM Infoprint 1222]
> 
> > [Windows NT x86]
> > Printer Driver Info 1:
> >         Driver Name: [AGFA-AccuSet v52.3]
> > 
> > Printer Driver Info 1:
> >         Driver Name: [IBM Infoprint 1222]
> > 
> > Yet if I click "connect" for that printer in a XP SP1 WS (that 
> > belongs to that domain) I get the well known error "The server for 
> > the printer does not
> > have the correct printer driver installed..."
> 
> How did you upload the drivers?  Did you get any errors
> toward the end of this process?  

Yes. If you follow the tutorial on the samba site you're lost! :-E 

I've spent a whole day figuring why on earth I was getting errors and guess
what? You don't have to use the APW! At least not from the beginning; God I
wish I had some good doc! Samba docs are not what they used to be; it looks
like the Zope way of doing docs is spreading... Anyway, the idea is that the
standard APW from XP attempts to do TWO things at a time: put the drivers on
the server (so the server know what to give when asked) AND install the
printer locally! This is wrong if you don't have the "add printer command"
in smb.conf. If any of those parts fails you're confused because the APW
DOES NOT TELL YOU WHICH PART FAILED! Fortunately you notice that the drivers
are placed on the server print$ but you still get an error, don't you? Well
the error is because samba does not know what drivers to serve for that
particular printer share at the "add printer to the local machine" stage of
the APW from client! You have to define the share and then from the
"printers and faxes" share (that you'll see on the server) you right click
on that particular printer; ignore the error and voila there is a "Sharing"
tab where (in XP in the lower right) you see an "Additional Drivers" button!
That is the way to install drivers on the server! After that, the key is in
the rpcclient: You list the drivers and printers on that server (with the
commands that you saw in my previous message) and then you "connect" them to
the defined printer shares!!!! Damn, If only someone would have told me...

#rpcclient servername -U root

rpcclient> setdriver "the name of the printer share" "the name of the driver
as reported by rpcclient enumdrivers"

In may case it was

rpcclient> setdriver "2nd floor ugly IBMInfop1222" "IBM Infoprint 1222"

... And for clarity, I do have a [2nd floor ugly IBMInfop1222] in smb.conf.

> Did you use drivers for IBM
> Infoprint 1222 that came with windows or some other source?  

The ones that are on the printer's CD are just fine! The PCL ones do work
great; XP will ask for location will take them from CD and copy them on the
server.

After this, one can eventually make a script that would be declared in
smb.conf as "add printer command"; it should modify the smb.conf, create the
spool dir *AND* register the drivers with rpcclient so you'll be able to use
the download drivers feature on the server. Either I'm really missing
something or the printer_driver2.html from the samba site is BADLY
incomplete to say at least... :-|

Bottom line, if it's an IBM network printer and you set a raw spool on the
samba machine it should work with the drivers served from the server. 


More information about the samba mailing list