[Samba] Printing - "lprm command" not getting executed
Joel Hammer
Joel at HammersHome.com
Thu Dec 5 22:34:00 GMT 2002
Here is what I used for one share. Looks like yours.
[Win4LinZ53]
comment = Raw Printer for Z53
path = /tmp
create mask = 0700
guest ok = yes
hosts allow = 192.168.
printable = Yes
printing = lprng
print command = echo %p %s >> /tmp/junkJ; /usr/bin/lpr -PWin4LinZ53 -J'%J' %s; rm %s
lpq command = /usr/bin/lpq -PWin4LinZ53
lprm command = /usr/bin/lprm -PWin4LinZ53 %j
lppause command = /usr/sbin/lpc hold -PWin4LinZ53 %j
lpresume command = /usr/sbin/lpc release -PWin4LinZ53 %j
printer name = lp
share modes = No
There is a file, /etc/lpd.perms, whose syntax is awful.
I have one line in mine:
DEFAULT ACCEPT
Other problems come to mind, mainly, permissions.
Joel
On Thu, Dec 05, 2002 at 12:30:39PM -0800, David Neilson wrote:
On Thu, Dec 05, 2002 at 12:30:39PM -0800, David Neilson wrote:
> 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
>
> >From the Unix command line, if I run the lprm command as myself (dneilson)
> "lprm -Plp11 <JOB_ID>", I can delete the job without any problem.
>
>
> Thanks for any help you can provide.
>
> David Neilson
>
> --
> To unsubscribe from this list go to the following URL and read the
> instructions: http://lists.samba.org/mailman/listinfo/samba
More information about the samba
mailing list