distcc only builds locally when using rpmbuild

stan stanl-fedorauser at vfemail.net
Mon Jun 1 23:43:03 UTC 2015


On Mon, 01 Jun 2015 07:14:16 -0400
Sam Varshavchik <mrsam at courier-mta.com> wrote:

[snip]
> ...for some reason, distcc ends up
> ignoring everything but the localhost setting, in /etc/distcc/hosts,
> when it's started from rpmbuild. That's where the problem is.
> Obviously rpmbuild has something to do with it, but it's not the
> direct setting. rpmbuild's %_smp_mflags is configured correctly, and
> it's doing it's job of kicking off make -j 10, as it should be.
> 
> I was hoping that someone came across this glitch before, and knew
> the root cause. I guess not, and I suppose I'll have to strace the
> whole thing, and see if that uncovers any clues.
 
I don't use distcc, but I have a wild guess for you.  Do you have a
user account on the machine where you are running the distributed
compiles? Is it the same user as on the machine where you start the
process?

What I'm getting at is that there might not be an rpmbuild user on the
remote machine, and so when it tries to fire off a job, it is
rejected.  Whereas, when you fire off the remote jobs as you, you have
an account on that box, and so it accepts them.

Maybe if you install rpmbuild on the remote machine, even though you
aren't using it there, it will set up the infrastructure allowing jobs
to run.  Probably can do the same thing by adding rpmbuild to a group
without an install, but I'm not sure which group.

Or maybe it's an selinux thing that won't allow jobs to run unless they
have selinux permission.  You have that through your account, rpmbuild
doesn't.  And rpmbuild is passing rpmbuild environment, not yours.

And maybe this is all hogwash.  :-)



More information about the users mailing list