On 11.01.2006, at 14:27, Jim Washington wrote:
Bernd Dorn wrote:
Does this script put a zdsock file in /etc/init.d? I have noticed
that the zdsock file is created in the directory where zopectl is
called. If this is what you are seeing, one solution might be to
do some cd statements (e.g., cd $INSTANCE_HOME) so that multiple
zdsock files are created, one for each instance.
i have two init scripts (see below) which start a zope3 instance
this works fine if i start one of them, but if i try to start the
second, the following message appears
* Starting Zope in /home/zope1/timetables ...
WARNING! zdrun is managing a different program!
our program = ['/home/zope1/timetables/bin/runzope']
daemon's args = ['/home/zope1/screens/bin/runzope']
daemon process already running; pid=10839
seems that the pid of the other instance is taken, does anybody
know how to solve this
or is there another way to start zope3 as an unprivileged user?
as far as i know there is no effective-user directive in zope.conf
as in zope2
thx, you brought me on the right track!
it is actually a problem with the default zdaemon.conf in zopeskel,
where socket-name is just set to zdsock
this will be placed in the working directory, which in my case was
the home directory of the user because of the "-" switch to su
so i added the following line to zdaemon.conf:
socket-name $DATADIR/zopectlsock, which this is the behavior of zope
i would say this is a bug, because instances created with
mkzopeinstance can not be run in parallel
additionally with socket-name set to zdsock one is unable to run
zopectl as root, because then the socket gets created in the home of
root where the user the daemon is running on has no access. this
leads to an access denied error.
the init script is now the same as with zope2, i can just call
zopectl directly without suing to the zope user
i will fix this in the trunk
Zope3-dev mailing list