Hello!
I've been struggling with the above for a couple of days now and was hoping to have a fresh set of eyes glance over the problem. The setup is as follows:
CentOS 6.5
Samba version 3.6.9-169
CUPS 1.4.2
I've also managed to replicate the issue using alternate versions of Samba (4.1.6) and Cups (1.7.2) installed on a Ubuntu 14.04.1 machine. A summary of the problem is as follows:
- Cups is configured and working as expected. I can add a printer via the GUI (hostname:631/admin), print a test page from the GUI successfully, and also add the printer to any client using the full path (hostname:631/printers/pritername). The clients can print successfully too when the printer is added this way. If it's noteworthy I've configured the printer in Cups as lpd.
- Samba seems to be configured correctly too. I can view all shares via \\hostname\ from any Windows client, including the [print$] share and its contents.
The problems come in when trying to distribute drivers to client (64bit Windows 7, 8 and 8.1) machines via Samba. I've followed and checked through a number of guides (eg. this[1] one) without success.
- I've added the printer drivers to /usr/share/cups/drivers and removed all capitalization within the driver file names. I can browse to this folder from clients via \hostname\print$ and view the drivers.
- I've added both 32bit and 64bit drivers using the cupsaddsmb command without any errors. The printer then appears within the share as an available shared printer.
- Upon double clicking/right click->connect it prompts "Do you trust this printer?". I can click on "Install Driver". The driver installation occurs and then, immediately as it finishes, an error stating "Windows cannot connect to the printer. Operation failed with error 0x000000d8" is displayed.
I've replicated this on multiple Windows 7 and 8.1 clients. My initial thoughts were that it were a driver problem but I receive the same error if I remove the drivers entirely from /usr/share/cups/drivers and attempt the "point'n'click" install. The only difference is is that Windows skips the driver installation but then displays the same error (although error code 0x00000003). If I tail -f /var/log/cups/error.log while double clicking on the samba printer share the following occurs:
Quote:
D [17/Oct/2014:16:22:38 +0200] cupsdAcceptClient: skipping getpeercon()
D [17/Oct/2014:16:22:38 +0200] cupsdAcceptClient: 13 from localhost (Domain)
D [17/Oct/2014:16:22:38 +0200] cupsdReadClient: 13 POST / HTTP/1.1
D [17/Oct/2014:16:22:38 +0200] cupsdSetBusyState: Active clients
D [17/Oct/2014:16:22:38 +0200] cupsdAuthorize: No authentication data provided.
D [17/Oct/2014:16:22:38 +0200] cupsdReadClient: 13 1.1 Get-Jobs 1
D [17/Oct/2014:16:22:38 +0200] Get-Jobs ipp://localhost/printers/printername
D [17/Oct/2014:16:22:38 +0200] Returning IPP successful-ok for Get-Jobs (ipp://localhost/printers/printername) from localhost
D [17/Oct/2014:16:22:38 +0200] cupsdSetBusyState: Not busy
D [17/Oct/2014:16:22:38 +0200] cupsdReadClient: 13 POST / HTTP/1.1
D [17/Oct/2014:16:22:38 +0200] cupsdSetBusyState: Active clients
D [17/Oct/2014:16:22:38 +0200] cupsdAuthorize: No authentication data provided.
D [17/Oct/2014:16:22:38 +0200] cupsdReadClient: 13 1.1 Get-Printer-Attributes 1
D [17/Oct/2014:16:22:38 +0200] Get-Printer-Attributes ipp://localhost/printers/printername
D [17/Oct/2014:16:22:38 +0200] Returning IPP successful-ok for Get-Printer-Attributes (ipp://localhost/printers/printername) from localhost
D [17/Oct/2014:16:22:38 +0200] cupsdSetBusyState: Not busy
D [17/Oct/2014:16:22:38 +0200] cupsdReadClient: 13 WAITING Closing on EOF
D [17/Oct/2014:16:22:38 +0200] cupsdCloseClient: 13
|
I then suspected some kind of permissions problem but I can't seem to identify any.
I'd be happy to provide any config files eg. smb.conf, cupsd.conf or log files if it will help. So far nothing has jumped out at me other than the tail above.
Any thoughts or ideas? Absolutely any assistance or guidance would be greatly appreciated.