[Twisted-Python] how to daemonize twisted...and detatch from shell process

exarkun at twistedmatrix.com exarkun at twistedmatrix.com
Sat Oct 6 21:56:00 EDT 2012

On 6 Oct, 10:30 pm, schenette at gmail.com wrote:
>I'm attempting to create an ubuntu service that when started will run 
>the background processing beanstalk jobs.
>I've taken the code from beanstalk-client twisted to act as my 
>client (
>The issue I'm having is how do I set up my service (ocapi.py) so that 
>the daemon (ocapi) starts it detaches from the process, which isn't'
>happening right now.

Use twistd, which comes with daemonization features.  From the looks of 
your code, you're halfway there already.


>ocapi.py (service) <--this is what should detach and I put it in
>/usr/sbin/ocapi.py code found at http://pastebin.com/29VnXnrm
>ocapi (daemon) <-- goes int /etc/init.d/ocapi code found at
>stephan at oc:~$ sudo /etc/init.d/ocapi start
>* Starting ocapi... Removing stale pidfile /var/run/ocapi.pid
>...problem is I don't get my shell prompt back when i start the 
>meaning it didn't detach from the parent process...hopefully someone 
>shed some light on this.

More information about the Twisted-Python mailing list