ubuntu nginx 运行两次-无法终止额外的进程

ubuntu nginx 运行两次-无法终止额外的进程

在 Amazon EC2 上运行的全新 Ubuntu 12.04 实例

让 Nginx 与 Passenger 一起运行

添加了 upstart 脚本

description "NGiNX starter"
start on (local-filesystems and runlevel [2345])
stop on runlevel [016]
respawn
exec /etc/nginx/sbin/nginx

问题是我有多个 nginx 处理正在运行(超出工作线程)

$ ps aux | grep nginx
root       720  0.0  0.2  39624  1228 ?        Ss   03:23   0:00 nginx: master process /etc/nginx/sbin/nginx
www-data   722  0.0  0.3  40136  1884 ?        S    03:23   0:00 nginx: worker process
www-data   723  0.0  0.3  40136  1884 ?        S    03:23   0:00 nginx: worker process
www-data   724  0.0  0.3  40136  2388 ?        S    03:23   0:00 nginx: worker process
www-data   725  0.0  0.3  40136  1884 ?        S    03:23   0:00 nginx: worker process
www-data   726  0.0  0.3  40136  1884 ?        S    03:23   0:00 nginx: worker process
root      2218  0.0  0.6  39620  3688 ?        Ss   03:45   0:00 /etc/nginx/sbin/nginx

我的理解是,进程 720 已正确启动,进程 722、723、724、725、726 代表在 nginx.conf 中配置的工作线程

我不明白进程 2218 在做什么?当我尝试

sudo kill 2218

我明白了

kill: No such process

当我再次使用 ps aux | grep nginx 检查时,恶意进程将在新的 PID 下运行

我认为 upstart 脚本出了问题,因为如果我将其移出 /etc/init 重新启动实例,然后运行相同的 ps aux | grep nginx 则没有任何运行

如果我手动启动 nginx,则不会出现恶意线程

我在另一台服务器上使用了同样的脚本一年多了,没有任何问题,知道我做错了什么吗?

相关内容