[Samba] Automated printer driver problems

Peter Carpenter peterc at osm.co.uk
Fri Mar 21 12:07:22 GMT 2003


Hmm. Looks ok to me but I'm just a user not a guru. Here's a couple of
things to try:
  - log level = 1       (for a bit of connection info in the log)
  - you have TWO printer admin commands (dunno if this hurts)

My own print setup looks like this:
printing = BSD
printer admin = cpadmin      <=== i.e. explicit unix account
show add printer wizard = yes
username map = <file mapping 'administrator' to 'cpadmin'>

path = <path to spool dir>
guest ok = yes
guest account = guest
browseable = yes
printable = yes

path = <path to driver dir>
guest ok = yes
guest account = guest
browseable = yes
read only = yes
write list = cpadmin

Hope something here gives you a bright idea. It _will_ work - eventually...


-----Original Message-----
From: A.J.Dawson [mailto:A.J.Dawson at Bradford.ac.uk]
Sent: Friday, 21 March, 2003 11:17 AM
To: Peter Carpenter
Cc: samba at lists.samba.org
Subject: RE: [Samba] Automated printer driver problems

Heres the smb.conf file I'm using (suitably sanitised...)

Oh, and yes, I'm a member of the group 'Archive_adm'.


#Start of smb.conf file
   # general declarations for the server
   workgroup = WORKGROUP
   server string = Server
   socket options = TCP_NODELAY
   interfaces = XXX.XXX.XXX.XXX/24
   local master = yes
   os level = 69
   domain master = yes
   preferred master = yes
   domain logons = yes
   wins server = XXX.XXX.XXX.XXX
   time server = yes
   map archive = yes
   browseable = yes
   lm announce = no

   # log file options - log by machine name, not > 200k /log
   log file = /usr/local/samba/log/log.%m
   max log size = 200

   # security considerations
   security = user
   encrypt passwords = yes
   # NOTE: we need to set this to no for Win95 clients < 4.00.950a
   hosts allow = XXX.XXX.XXX. 127.
   remote announce = XXX.XXX.XXX.255/WORKGROUP
   guest account = nobody
   map to guest = Never
   guest ok = no
   domain admin group = @NT_adm
   add user script = /usr/sbin/useradd -c NT_machine -d /dev/null -g
NT_machines -s /bin/false %m$
   bind interfaces only = yes
   unix password sync = yes
   # ensure password changed get pushed to the NIS database...
   passwd program = /usr/bin/passwd %u ; make -s -C /var/yp

   # New directive to try to see if XP can log on...
   nt acl support = no

   # printer defaults
   load printers = yes
   printing = BSD
   print command = /usr/bin/lpr -P%p -r %s
   lpq command = /usr/bin/lpq -P%p
   printer admin = @NT_adm
   printcap name = /etc/printcap
   printer admin = @Archive_adm

   # logon paths etc.
   logon script = scripts\%u.bat

   # Win9x profile store location
   logon home = \\server\%u\profile\win9x

   # WinNT/2K/XP profile store location
   logon drive = p:

   comment = Network Logon Service
   path = /usr/local/samba/netlogon
   guest ok = no
   writable = no
   browseable = no

   comment = %u on %L
   volume = %u on %L
   writeable = yes
   valid users = @users
   nt acl support = no
   browseable = no

   comment = Laserjet_6MP on %L
   printable = yes
   path = /var/spool/lpd/spooldir
   printer = lj_6mp
   browseable = yes
   read only = yes
   valid users = @users

   comment = Printer driver files on %L
   path = /usr/local/samba/printer_drivers
   guest ok = no
   browseable = no
   read only = yes
   write list = @Archive_adm
   directory mask = 0755

# End of smb.conf file

On Fri, 21 Mar 2003, Peter Carpenter wrote:

> To answer the easy bit first: the printer config info is stored in the
> files in the $SAMBA_HOME/var/locks directory. I think the most relevant
> are ntdrivers.tdb ntforms.tdb ntprinters.tdb share_info.tdb. I had a
> experience to you with the "Access denied" etc messages and eventually got
> it right by endless futzing around but still don't really know what
> the breakthrough. So keep trying - it _will_ work. If you post your
> I'll see if I've got anything you haven't.
> -----Original Message-----
> From: A.J.Dawson [mailto:A.J.Dawson at Bradford.ac.uk]
> Sent: Friday, 21 March, 2003 10:06 AM
> Hi,
> I am having a problem with automating the download of printer drivers from
> a Samba 2.2.8 server.
> We used to use the server with he following options set:
> use client driver = yes
> disable spoolss = yes
> However these options have now been removed from smb.conf.
> Following the instructions available in printer_driver2.htm (supplied in
> docs/htmldocs in the source), I can add a printer driver to the samba
> machine.  To do this, I created a user called 'root' on my Win2K machine,
> logged on as that and then installed the driver to the server following
> the instructions.
> Running rpcclient server -U root%secret -c "enumdrivers" gives
> session setup ok
> Domain=[DOMAIN] OS=[Unix] Server=[Samba 2.2.8]
> [Windows NT x86]
> Printer Driver Info 1:
>         Driver Name: [HP LaserJet 6P/6MP - PostScript]
> Running rpcclient server -U root%secret -c "enumprinters" gives
> Domain=[DOMAIN] OS=[Unix] Server=[Samba 2.2.8]
>         flags:[0x800000]
>         name:[\\server\Laserjet_6MP]
>         description:[\\server\Laserjet_6MP,,Laserjet_6MP on server]
>         comment:[Laserjet_6MP on server]
> showing that no driver is associated with the printer in question.  The
> driver files have appeared in /usr/local/samba/printer_drivers/W32X86
> owned by the person/group of the user who uploaded them (me).
> If I now attempt to view the properties of the printer on the server
> (navigate to network neighbourhood -> printers -> Laserjet_6MP ->
> properties), I still got the message "Device settings cannot be displayed.
> The driver for the specified printer is not installed...", so the driver
> is obviously not associated with the printer.
> Attempting to set the driver for the printer from the drop down list
> available in the 'Advanced' tab of the dialogue box and clicking 'OK'
> gives me the message 'Printer settings could not be saved' and the driver
> does not become associated with the printer in question.
> I assume that I am doing something wrong somewhere, but I dont know where!
> I suspect that it is something very simple such as a file/directory
> permission problem.  Does anyone have the solution?
> Do I need to run something like rpcclient server -U root%secret -c
> "setdriver Laserjet_6MP \"HP LaserJet 6P/6MP - PostScript\"" to get the
> server to associate the driver with the printer in question?
> Also, where is the information about the drivers available for the
> printers stored on the system?  I dont like the fact that I have no idea
> where the information is actually stored and would like to know!
> Specifically, where rpcclient gets its information from to show the
> results shown above.
> Regards
> Andy
> Dr. Andy Dawson
> A.J.Dawson at Bradford.ac.uk
> http://www.mossie.org
> http://www.museum-explorer.org.uk

Dr. Andy Dawson
A.J.Dawson at Bradford.ac.uk

 Never attribute to malice that which is adequately explained by stupidity.

More information about the samba mailing list