[Distutils] [buildout] setuptools/buildout trying to use /root/.python-eggs after setuid()ing with Zope
marius at pov.lt
Tue Feb 10 10:09:31 CET 2009
On Wed, Feb 04, 2009 at 05:17:01PM +0100, Andreas Jung wrote:
> Hi there,
> I am not sure which component is in charge for the following issue:
> - standard Plone 3.1 installation installed with paster/Zopeskel
> with a 'zope' account without special privileges
> - in the instance is started from through /etc/init.d as root
> but immediately setuid to effective-user 'zope'
> - after setuid(), setuptools is trying to write to /root/.python-eggs
> during the startup-phase for (my own) module zopyx.textindexng3
> - it creates inside:
> new:~/.python-eggs # ls -la
> total 1
> drwxrwxrwx 3 root root 144 Feb 4 13:17 .
> drwxr-xr-x 24 root root 1200 Feb 4 17:10 ..
> -rw-r--r-- 1 zope users 0 Feb 4 13:17 a
> drwxr-xr-x 3 zope users 72 Feb 4 13:17
> Why is setuptools using /root/.python-eggs only for this particular
> module and isn't it using something like /home/zope/.python-eggs
> instead - especially having changed the UID already?
It doesn't look at UID, it looks at $HOME. Actually, it looks at
$PYTHON_EGG_CACHE first, so you can set that.
I had the same problem with trac and matplotlib (which doesn't have a
sane separate environment variable), and in the end had to resort to an
ugly hack in my /etc/init.d/script:
sudo -u $NONPRIVILEGED_USER env HOME=/path/writable/to/that/user \
start-stop-daemon --start --exec /path/to/executable -- $options
HOST SYSTEM NOT RESPONDING, PROBABLY DOWN. DO YOU WANT TO WAIT? (Y/N)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 189 bytes
Desc: Digital signature
More information about the Distutils-SIG