cupsaddsmb fails -- unable to share print drivers from samba

Discussion in 'Server Operation' started by sgla1, Aug 1, 2006.

  1. sgla1

    sgla1 New Member

    I am running dapper with all updates on a generic wintel pc. I have set up a simple samba server with cups to share an attached printer with windoze clients (they authenticate against a different samba pdc) Cupsaddsmb fails with the following error:
    Code:
    Unable to copy Windows 2000 printer driver files (1)!
    Running command: smbclient //localhost/print$ -N -A /var/spool/cups/tmp/44cb9359ab2bb -c 'mkdir W32X86;put /var/spool/cups/tmp/44cb9354030f8 W32X86/HPofficejet.ppd;put /usr/share/cups/drivers/ps5ui.dll W32X86/ps5ui.dll;put /usr/share/cups/drivers/pscript.hlp W32X86/pscript.hlp;put /usr/share/cups/drivers/pscript.ntf W32X86/pscript.ntf;put /usr/share/cups/drivers/pscript5.dll W32X86/pscript5.dll'
    Domain=[FPIG] OS=[Unix] Server=[Samba 3.0.22]
    NT_STATUS_NETWORK_ACCESS_DENIED making remote directory \W32X86
    NT_STATUS_OBJECT_PATH_NOT_FOUND opening remote file \W32X86/HPofficejet.ppd
    NT_STATUS_OBJECT_PATH_NOT_FOUND opening remote file \W32X86/ps5ui.dll
    NT_STATUS_OBJECT_PATH_NOT_FOUND opening remote file \W32X86/pscript.hlp
    NT_STATUS_OBJECT_PATH_NOT_FOUND opening remote file \W32X86/pscript.ntf
    NT_STATUS_OBJECT_PATH_NOT_FOUND opening remote file \W32X86/pscript5.dll
    
    my smb.conf is:

    Code:
    [global]
            workgroup = fpig
            netbios name = sara-desk
            server string = lan printer server
            hosts allow = 192.168.1.
            security = share
            load printers = yes
            printing = cups
            printcap name = cups
    
    [share1]
            path = /sharedstuff
            comment = files for everyone
            read only = no
            browseable = yes
            guest ok = yes
    
    [printers]
            comment = All Printers
            path = /var/spool/samba
            browseable = yes
            printable = yes
            writable = no
            guest ok = yes
    
    [print$]
            comment = Printer Drivers
            path = /var/lib/samba/printers
            browseable = yes
            guest ok = no
            read only = yes
            write list = root
    the /var/lib/samba/printers directory structure is as follows:
    ls -lR /var/lib/samba/printers
    /var/lib/samba/printers:
    total 8
    drwxrwxrwx 2 root root 4096 2006-07-11 05:48 W32X86
    drwxrwxrwx 2 root root 4096 2006-07-11 05:48 WIN40

    /var/lib/samba/printers/W32X86:
    total 0

    /var/lib/samba/printers/WIN40:
    total 0

    the cups drivers were downloaded from the cups website and installed with the included makefile to /usr/share/cups/drivers. That directory is as follows (windows ps drivers added also):
    ls -lR /usr/share/cups/drivers/
    /usr/share/cups/drivers/:
    total 1432
    -rw-r--r-- 1 root root 803 2006-07-26 15:25 cups6.inf
    -rw-r--r-- 1 root root 72 2006-07-26 15:25 cups6.ini
    -rw-r--r-- 1 root root 12568 2006-07-26 15:25 cupsps6.dll
    -rw-r--r-- 1 root root 13672 2006-07-26 15:25 cupsui6.dll
    -rw-r--r-- 1 root root 129024 2006-07-26 15:45 ps5ui.dll
    -rw-r--r-- 1 root root 455168 2006-07-26 15:45 pscript5.dll
    -rw-r--r-- 1 root root 26038 2006-07-26 15:45 pscript.hlp
    -rw-r--r-- 1 root root 792644 2006-07-26 15:45 pscript.ntf

    I don't understand where cupsaddsmb is trying to create the \W32X86 directory or why there is a permission problem.
     
  2. falko

    falko Super Moderator Howtoforge Staff

  3. sgla1

    sgla1 New Member

    cupsaddsmb error

    Hi falko and thanks for your reply.

    I have looked at the tutorial you mentioned; in fact I have used it in slightly modified form to set up two different mandrake samba servers. the command cupsaddsmb works on them--it copies the drivers to /var/lib/samba/printers/W32X86 without error.

    The problem only happens on my ubuntu dapper system, which I wanted to use as a print server because it has the printer installed locally.

    As an experiment, in /var/lib/samba/printers I did
    Code:
    mv W32X86/ W32X86.old
    I now get a slightly different error:
    Code:
    Unable to copy Windows 2000 printer driver files (1)!
    Running command: smbclient ///var/run/cups/cups.sock/print$ -N -A /var/spool/cups/tmp/44d10de0386ba -c 'mkdir W32X86;put /var/spool/cups/tmp/44d10dd62f210 W32X86/HPofficejet.ppd;put /usr/share/cups/drivers/ps5ui.dll W32X86/ps5ui.dll;put /usr/share/cups/drivers/pscript.hlp W32X86/pscript.hlp;put /usr/share/cups/drivers/pscript.ntf W32X86/pscript.ntf;put /usr/share/cups/drivers/pscript5.dll W32X86/pscript5.dll'
    Connection to  failed
    What do you suppose "Connection to failed" means? Whatever, it seems to be an ubuntu dapper thing. I have checked the logs; they show nothing useful. Also, cupsaddsmb will not create the dir W32X86.

    Steve
     
  4. falko

    falko Super Moderator Howtoforge Staff

    Hm, Till is the Samba expert; maybe he didn't read this thread. Write him a PM (username is till) (with the URL of this thread) and ask him if he knows a solution.
     
  5. brug71

    brug71 New Member

    Hi Steve, I don't know if my reply style is correct. I rarely write online so be patient.
    I had the same problem using Ubuntu 6.10 & Samba 3.0.22 (cups, foomatic and so on...). I solved it temporarily switching security from "share" to "user" and after cupsaddsmb switched back. I've got the same behaviour you get, If you need some more information ask. Now I solved my problem and is time to go. I hope this will help. Regards to everybody.
     
  6. Lazarus1331

    Lazarus1331 New Member

    cupsaddsmb "Connection to failed"

    "Connection to failed"

    This message is from executing the command:
    smbclient ///var/run/cups/cups.sock/print$

    It is telling you that it failed to connect to your Samba server.

    Use the -H <Your_Samba> option to specify the server. I was getting this error because for some reason it was not by default connecting to the right place.

    Also, make sure you are providing a username and password which matches an account in smbpasswd.
     

Share This Page