Problem with Automatic Printer Downloading in Samba

Joe_Pfaltzgraff at Joe_Pfaltzgraff at
Wed Nov 7 05:36:01 GMT 2001

Joe Pfaltzgraff at PATAPSCO
11/07/2001 08:35 AM

I had a similar problem with 2.2.1a - when I upgraded to 2.2.2 I didn't have
trouble anymore...

     I installed Samba 2.2.1a in Linux and tried to configure it for Automatic
Printer  Driver Downloading. While uploading the driver files to the Samba
Server, although all the  driver files get copied to the correct location
and the printer gets added to CUPS, I get a  message "The operation could
not be completed . Access Denied".

     While downloading the files, the uploaded printer is listed in the
"Printers"  folder. Double-clicking it prompts a message - "Do you want to
download the driver files  from the server?". When said - "Yes" to this, a
message "No driver files found. Do you want  to install a driver locally?"

     Why do these problems occur?

     But on the Windows machine, if I go to the properties of the printer, click
on "New  Driver" and install it again on the server, NO "Access Denied"
message appears. After this,  I am able to download the driver to any other
Windows client.

     I do not understand why I get the message "Access Denied" the first time?
Please  share with me if you have any info on this.

     Another strange thing that happened is - sometimes driver files were copied
to a  folder "2" under W32X86 and also straight under W32X86 while other
times it was copied to  only to the folder 2 under W32X86. I do not
understand why this happens. I have given a step  by step account of what I
did to configure at the end of this mail.

     Another help. I am trying to port Samba to VxWorks. I need just the simple
functionalities like - Name resolution, File Sharing and Automatic Printer
Driver  Downloading. I DO NOT need functionalities like - my server acting
as a domain server and  print server. I want only the functionalities listed
above. Can you give me some idea of  which part of Samba code that I can
prune out to support these minimum functionalities? I  ask this because
memory is a major cause of concern for me in VxWorks environment.

Thanks & Regards,


At Linux:
1.Created a group "ntadmin" in Linux machine.
2.Created a user "padmin" in group "ntadmin" (as printer administrator)
3.Created the appropriate folders (W32X86 and WIN40) at /home/samba/printers
where the  driver files are uploaded. Gave chmod 775 for "printers" folder.
4.Added an user with the "hostname" followed by $ where hostname is the name
of the Windows  machine used to upload.
5.Added the "hostname$" as well as "padmin" to the smbpasswd list
6.Add the following to smb.conf file:
     #under global-
     printer admin = @ntadmin
     printing = cups
     addprinter command = /usr/bin/addprinter

     #A new share
          path = home/samba/printers
          public = yes
          browseable = yes
          read only = yes
          write list = Administrator,padmin,root
          directory mask = 0775

5.Created the script addprinter to add the printer to CUPS as follows.
     driver = $(grep -lr "$4" /home/samba/printers/W32X86 | head -1)
     /usr/sbin/lpadmin -p $2 -P $driver -L "$5" -v "parallel:/dev/lp0"

At Windows NT:
1. Logged in as "padmin" into the Samba server and tried to upload a driver
through  "AddPrinter" at Printers folder.

More information about the samba-technical mailing list