[Bug 787755] [NEW] Samba does not notice added or removed CUPS printers

Chris Siebenmann 787755 at bugs.launchpad.net
Tue May 24 19:29:09 UTC 2011


Public bug reported:

Binary package hint: samba

Our environment uses a CUPS server that is separate from the machine
running Samba; the Samba machine has an /etc/cups/client.conf with
the ServerName of the CUPS server. In this setting, Samba does not
notice when you add or remove a CUPS printer, although 'lpstat -v'
and so on on the machine running Samba will show the changed printer
list. Reloading Samba (smbd) does not change this situation; only
restarting smbd makes Samba update the printer list.

It is possible that this bug also happens if the CUPS server is
running on the same machine as the Samba server, but I have not
tested that.

Ubuntu release: Ubuntu 10.04 LTS 32-bit x86, with all current updates.
Samba version: 2:3.4.7~dfsg-1ubuntu3.6
CUPS version: 1.4.3-1ubuntu1.3

(This probably reproduces on all architectures, but I haven't tested.)

How to reproduce:
- configure a CUPS server machine and set up a printer.
- install a stock Ubuntu 10.04 machine. Create an /etc/cups/client.conf
  on it that has 'ServerName <IP-of-CUPS-server>'. Verify that Unix
  printing works.
- Install Samba: 'apt-get install samba smbclient'
- edit /etc/samba/smb.conf to add 'printcap cache time = 10' to the
  '[ global ]' section. Restart Samba.
- Use 'smbclient -L localhost' to verify that you see the printer from
  your CUPS server.
- add a printer to your CUPS server. Wait 30 seconds and run
  'smbclient -L localhost' again, and see that it does not show the new
  printer. 'lpstat -v' and printing to it from Unix will work, though.
- optionally, 'reload smbd' and repeat the 'smbclient -L localhost' to
  demonstrate that the reload did not change the situation.
- 'service smbd restart', repeat 'smbclient -L localhost', and the new
  printer is now present.
- delete the printer on the CUPS server, and rerun 'smbclient -L localhost';
  Samba still lists the printer.

(The convenient way to add a new printer is just to add a new name for
your existing printer, duplicating destination settings and so on.)

What I expected to happen: 'smbclient -L localhost' lists the new
printer when it is added and does not list it when it is removed.

This behavior is a regression from Ubuntu 8.04 (samba version
3.0.28a-1ubuntu4.14). I have not tested intermediate non-LTS
releases to determine where the problem first appears.

Since your Samba bug reporting page specifically asks for this
information:

$ dpkg-query -W -f='${Package} ${Version} ${Source} ${Status}\n' | grep samba
libsmbclient 2:3.4.7~dfsg-1ubuntu3.5 samba install ok installed
libwbclient0 2:3.4.7~dfsg-1ubuntu3.5 samba install ok installed
samba 2:3.4.7~dfsg-1ubuntu3.5  install ok installed
samba-common 2:3.4.7~dfsg-1ubuntu3.5 samba install ok installed
samba-common-bin 2:3.4.7~dfsg-1ubuntu3.5 samba install ok installed
smbclient 2:3.4.7~dfsg-1ubuntu3.5 samba install ok installed

The Samba log files in /var/log/samba contain no information; log.smbd
and log.nmbd have only startup notices, and the log.<client> file is
empty (0 length). I can include them if you really need them.

I'm attaching 'smbclient -L' output, and also /etc/samba/smb.conf
and 'testparm -s' output, although the latter two will probably be
mostly pointless (since I've given instructions on how to construct
the smb.conf above).

** Affects: samba (Ubuntu)
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of Ubuntu
Server Team, which is subscribed to samba in Ubuntu.
https://bugs.launchpad.net/bugs/787755

Title:
  Samba does not notice added or removed CUPS printers



More information about the Ubuntu-server-bugs mailing list