After spending too many hours trying to get tracd running as a daemon on Ubuntu 10.04 I might as well share my experiences. At first I begun with some init.d scripts I found googling for tracd init.d. The problem with them was that they were made to run tracd as root which frankly didn’t feel that great. I tried to modify them to use the –user/–chuid options to no avail. In the end I understood that the problem was not those options but that the pid file I was trying to use with the tracd command for some reason couldn’t be written.
These mishaps wasn’t only bad as I therefor started fiddling with upstart. upstart is a much more pleasant experience than classical init scripts. All I had to do was to create the file
description "tracd server" author "KO" start on startup stop on shutdown expect daemon script exec sudo -u www-data /usr/bin/tracd --daemonize --port=8000 \ --hostname=127.0.0.1 -s /path/to/trac/project end script
The key here was the expect daemon stanza which saved my day. After that you can use start|stop|status processname like:
sudo start tracd
Now you might wonder why I wanted to run tracd as a daemon. I was about to switch to nginx on the server running trac and the daemon way seemed the easiest.
One thought on “tracd with upstart on Ubuntu”
Thanks! Works for me, but I did have to remove the ‘–daemonize’ flag, as mentioned here: http://serverfault.com/questions/461874/ubuntu-upstart-script-for-tracd-hangs-on-start-stop