From: | Tim Darby <t+dfbsd@xxxxxxxxxxxx> |
Date: | Sun, 21 Nov 2010 16:34:59 -0700 |
I'm seeing this exact problem on a 2.8. 3 system. I've done the following troubleshooting steps:- Verified that I'm using the lpr that came with the system- Verified that my spool directory permissions are all correctWhen I print locally with lpr as root or as a user in the wheel group, it works fine. If I try to print as an unprivileged user, it fails. I noticed that changing permissions on the socket file /var/run/printer to 777 solves the problem, but that doesn't seem like a good answer. I see that lpr is suid and in lpr/common_source/startdaemon.c, before it tries to connect to the socket, it does a seteuid() to root, but I don't know what happens after that. Anyone have any insights into this?
Tim
On Sat, Mar 13, 2010 at 1:44 PM, Stephane Russell <srussell@prodigeinfo.com> wrote:I'm getting the same exact problem as described when printing from a
regular user:
lette@alcyone: {102} lpq
alcyone: Warning: no daemon present
Rank Owner Job Files Total Size
1st lette 618 (standard input) 697 bytes
no entries
I've just upgraded from 1.6 to 2.4, and I have this problem since. When
I'm printing from a user that is not in the 'wheel' group, I'm getting this:
lette@alcyone: {101} cat .cshrc | lp
lpr: Unable to connect to /var/run/printer: Permission denied
lpr: Check to see if the master 'lpd' process is running.
jobs queued, but cannot start daemon.
I have a printer named impgal01, and my directories permissions are very
similar to the one you show:
alcyone# ls -la /var/spool/lpd
total 4
drwxr-xr-x 2 root daemon 512 Dec 4 2007 .
drwxr-xr-x 17 root wheel 512 Jun 16 2008 ..
alcyone# ls -lRa /var/spool/output
total 10
drwxr-xr-x 4 root daemon 512 Dec 5 2007 .
drwxr-xr-x 17 root wheel 512 Jun 16 2008 ..
drwxr-xr-x 2 root daemon 512 Mar 13 14:19 impgal01
drwxr-xr-x 2 root daemon 512 Mar 13 12:39 lpd
-rw-rw-r-- 1 root daemon 4 Mar 13 15:25 lpd.lock
/var/spool/output/impgal01:
total 10
drwxr-xr-x 2 root daemon 512 Mar 13 14:19 .
drwxr-xr-x 4 root daemon 512 Dec 5 2007 ..
-rw-rw---x 1 root daemon 4 Mar 13 14:18 .seq
-rw-rw-r-- 1 root daemon 46 Mar 13 14:01 lock
-rw-rw-r-- 1 root daemon 18 Mar 13 14:01 status
/var/spool/output/lpd:
total 4
drwxr-xr-x 2 root daemon 512 Mar 13 12:39 .
drwxr-xr-x 4 root daemon 512 Dec 5 2007 ..
It really seems that something changed in lpd between 1.6 and 2.4. I'll
have no choice than to chmod /var/run/printer if I want users to print.
SR
Matthew Dillon a écrit :
> :Update
> :
> :The socket /var/run/printer has permissions rwxrwx---. If I change them
> :to rwxrwxrwx there is no problem printing.
> :
> :Since no one else is complaining about this I assume I have something
> :set incorrectly but have run out of ideas.
> :
> :Thanks, Jim Chapman
>
> Hmm. On my printer box that socket is 770 and I can print fine so
> I think changing the perms might just be masking the issue you are
> having.
>
> Usually printer daemon problems are due to ownership/group issues
> in /var/spool/lpd or /var/spool/output, or path specifications
> that are not accessible by group 'daemon'.
>
> backup# ls -la /var/spool/lpd
> total 2
> drwxr-xr-x 2 root daemon 512 Sep 12 2005 .
> drwxr-xr-x 11 root wheel 512 Apr 2 2008 ..
>
> backup# ls -lRa /var/spool/output
> total 4
> drwxr-xr-x 3 root daemon 512 Sep 22 10:57 .
> drwxr-xr-x 11 root wheel 512 Apr 2 2008 ..
> drwxr-xr-x 2 root daemon 512 Dec 1 10:23 lpd
> -rw-rw-r-- 1 root daemon 4 Dec 4 21:53 lpd.lock
>
> /var/spool/output/lpd:
> total 5
> drwxr-xr-x 2 root daemon 512 Dec 1 10:23 .
> drwxr-xr-x 3 root daemon 512 Sep 22 10:57 ..
> -rw-r----x 1 root daemon 4 Sep 22 11:04 .seq
> -rw-rw-r-- 1 root daemon 33 Dec 1 10:23 lock
> -rw-rw-r-- 1 root daemon 25 Dec 1 10:23 status
> backup#
>
> In particular the lock file in /var/spool/output has to be 664
> and the lock and status files in /var/spool/output/lpd have to be
> 664. And the group has to be 'daemon'.
>
> -Matt
> Matthew Dillon
> <dillon@backplane.com>