[Samba] Printing - "lprm command" not getting executed

David Neilson DNeilson at westfam.com
Thu Dec 5 20:31:00 GMT 2002


I am attempting to get printing services for Windows 2000 clients working 
with Samba on a Red Hat 7.2 box.  The problem is I can not cancel print jobs

(either from a PC or the local smb client).   File sharing, and printing 
other than this problem, work fine.  

Here is a listing of configuration and system info:  1) the samba packages 
installed, 2) output of "uname -a", 3) the relevant parts of the smb.conf 
file, 4) printing capabilities which work, and 5) more detailed information 
about the problem.


1) SAMBA PACKAGES
samba-2.2.1a-4
samba-common-2.2.1a-4
samba-client-2.2.1a-4


2) RED HAT LINUX
Linux pegasus 2.4.7-10 #1 Thu Sep 6 17:27:27 EDT 2001 i686 unknown


3) EXCERPTS FROM SMB.CONF
[global]
# workgroup = NT-Domain-Name or Workgroup-Name
   workgroup = WIN   # A W2K DOMAIN

# server string is the equivalent of the NT Description field
   domain logons = yes

# if you want to automatically load your printer list rather
# than setting them up individually then you'll need this
   printcap name = /etc/printcap
   load printers = yes

# It should not be necessary to spell out the print system type unless
# yours is non-standard. Currently supported print systems include:
# bsd, sysv, plp, lprng, aix, hpux, qnx
   printing = bsd ### I HAVE ALSO TRIED lprng, AND LEAVING THIS COMMENTED
OUT.

# Security mode. Most people will want user level security. See
# security_level.txt for details.
   security = domain

# You may wish to use password encryption. Please read
# ENCRYPTION.txt, Win95.txt and WinNT.txt in the Samba documentation.
# Do not enable this option unless you have read those documents
   encrypt passwords = yes
   smb passwd file = /etc/samba/smbpasswd

printer admin = tiberius,dneilson,root
print command = /usr/bin/lpr -r -P%p %s
lpq command = /usr/bin/lpq -P%p %j
lprm command = /usr/bin/lprm -P%p %j
queuepause command = /usr/sbin/lpc stop %p
queueresume command = /usr/sbin/lpc start %p

#============================ Share Definitions
==============================
[lp11]
   comment=David's Printer
   path=/var/spool/samba/public
   valid users=dneilson mellwein
   printer=lp11
   printable=yes
   printer admin=tiberius,dneilson,root
   print command=/usr/bin/lpr -r -P%p %s
   lprm command=/usr/bin/lprm -P%p %j
   public=yes


4) PRINTING CAPABILITIES THAT WORK
I can print from the local smbclient as well as any Windows 2000 client I 
choose.  I am able to pause and unpause the print queue.  I have not had 
any problem printing any kind of document in the correct format.


5) MORE DETAILS OF THE PROBLEM.
When I try to delete a job, Samba gives the indication it deleted the job.
On a Windows 2000 client, after I delete the job and hit Refresh, the job 
is gone.  On the local smbclient, after I cancel the job and type "queue",
 the job is gone.  But in both cases, if I type lpstat -t from the server
command line, the job is still out there.

This problem can't be specific to Samba 2.2.1a, because I have tried it on
 a machine with 2.2.7, and have gotten the same results.  

In troubleshooting, I changed the "lprm command" line to read: "lprm 
command=/tmp/lprm %p %j".  The /tmp/lprm script consists of the following:
#### START SCRIPT /tmp/lprm
/usr/bin/id > /tmp/lprm.out
/usr/bin/lprm -P$1 $2 >> /tmp/lprm.out 2>&1
#### END SCRIPT /tmp/lprm
When I cancel jobs, this script should at least create an output file, 
but it doesn't - which indicates it doesn't get run.  As a result, I think
 Samba is not paying any attention to the "lprm command" line in the 
smb.conf.  Be aware that "testparm" will show the "lprm command" as having 
the correct parameters (/usr/bin/lprm -P%p %j).  

I have checked the samba log files, and they are not written to when I 
try to cancel jobs.

I have tried running a trace of the smbd command when I try to cancel jobs,
 and here is the output.  It is only one line long:
### START strace OUTPUT
select(1024, [9 10], NULL, NULL, NULL <unfinished ...>
### END strace OUTPUT



More information about the samba mailing list