Also, I noticed your child process is still running as 'root', not 'www-data' as intended.
This is probably because you have 'username=www-data' in your supervisor.conf file instead of 'user=www-data'. http://supervisord.org/configuration.html?highlight=stopsignal#program-x-se ction-settings (search for 'user'). 'userNAME' is for authentication for the webserver portion of supervisor. ........................................................................... ............................. Tim Bailey-Jones | Senior Advisory Systems Engineer, Development +1 (813) 454.8643 work mobile | (813) 900.8131 personal mobile Syniverse | We make mobile work. timothy.jo...@syniverse.com | http://www.syniverse.com <http://www.syniverse.com/> On 7/28/16, 12:49 PM, "supervisor-users-boun...@lists.supervisord.org on behalf of Luc Saffre" <supervisor-users-boun...@lists.supervisord.org on behalf of luc.saf...@gmx.net> wrote: >Hi Supervisor users and developers, > >this is my first post to this list, so I'd like to first say thanks for >such a great tool. I discovered it a month ago and start to use it more >and more on my production servers. I also wrote about it in my own >documentation: http://www.lino-framework.org/admin/linod.html > >But now I discovered my first problem where I hope for your help. >I have a single configuration file written by myself: > >$ cat /etc/supervisor/conf.d/linod_prod.conf >[program:prod_linod] >command=/bin/bash /var/www/vhosts/prod/linod.sh >username = www-data > >The mentioned bash script contains: > >$ cat /var/www/vhosts/prod/linod.sh >#!/bin/bash >set -e # exit on error >cd /var/www/vhosts/prod >. env/bin/activate >python manage.py linod > >The process starts and works well. The problem is that Supervisor does >not correctly stop the process. Here is a console session: > >$ ps aux | grep linod >1001 15828 0.0 0.0 8344 880 pts/0 S+ 18:07 0:00 grep >linod > >$ sudo service supervisor start >Starting supervisor: supervisord. > >$ ps aux | grep linod >root 16279 0.0 0.0 19720 1668 ? S 18:31 0:00 >/bin/bash /var/www/vhosts/prod/linod.sh >root 16284 58.8 0.8 328736 135368 ? S 18:31 0:02 python >manage.py linod >1001 16309 0.0 0.0 8344 884 pts/0 S+ 18:31 0:00 grep >linod > >Until here it looks good. I am a bit surprised to see two processes >here, but that might be caused by some magic. > >The real problem is that Supervisor obviously does not see that spawned >second process and therefore doesn't terminate it. After every restart I >have one additional process running: > >$ sudo service supervisor restart >Restarting supervisor: supervisord. >$ ps aux | grep linod >root 16284 6.0 0.8 328736 135368 ? S 18:31 0:02 python >manage.py linod >root 16322 0.0 0.0 19720 1672 ? S 18:32 0:00 >/bin/bash /var/www/vhosts/prod/linod.sh >root 16327 106 0.7 306560 115280 ? R 18:32 0:02 python >manage.py linod >1001 16352 0.0 0.0 8344 884 pts/0 S+ 18:32 0:00 grep >linod > >Yes, I am not using the latest version. I have a default configuration >on a Debian Wheezy VPS: > >$ uname -a >Linux SRV-LX1 3.2.0-4-amd64 #1 SMP Debian 3.2.78-1 x86_64 GNU/Linux > >$ apt-cache show supervisor >Package: supervisor >State: installed >Version: 3.0a8-1.1+deb7u1 >... > >Any ideas? > >Luc > >_______________________________________________ >Supervisor-users mailing list >Supervisor-users@lists.supervisord.org >https://lists.supervisord.org/mailman/listinfo/supervisor-users _______________________________________________ Supervisor-users mailing list Supervisor-users@lists.supervisord.org https://lists.supervisord.org/mailman/listinfo/supervisor-users