Restarting a daemon
marduk at letterboxes.org
Tue Apr 26 15:04:23 CEST 2011
On Tue, 2011-04-26 at 06:13 -0600, Jeffrey Barish wrote:
> Not exactly a Python question, but I thought I would start here.
> I have a server that runs as a daemon. I can restart the server manually
> with the command
> myserver restart
> This command starts a new myserver which first looks up the pid for the one
> that is running and sends it a terminate signal. The new one then
> daemonizes itself.
> I want the server to be able to restart itself. Will it work to have
> myserver issue "myserver restart" using os.system? I fear that the new
> myserver, which will be running in a subshell, will terminate the subshell
> along with the old myserver when it sends the terminate signal to the old
> myserver. If so, what is the correct way to restart the daemon? Will it
> work to run the restart command in a subprocess rather than a subshell or
> will a subprocess also terminate when its parent terminates?
You should look into tools like daemon-tools, or similar. It already
solves this (and many other) problems.
More information about the Python-list