我使用的是数字海洋ubuntu 14.04 vps。当我跑的时候
sudo lsof -i:9000我得到了不同的结果,例如
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
gunicorn 23148 django 5u IPv4 51019 0t0 TCP localhost:9000 (LISTEN)或
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
gunicorn 23174 django 5u IPv4 51179 0t0 TCP localhost:9000 (LISTEN)
gunicorn 23175 django 5u IPv4 51179 0t0 TCP localhost:9000 (LISTEN)即使我在上一次尝试后立即运行lsof,炮眼进程的数量也从0到4不等。简单运行
pkill gunicorn失败了,我相信是因为PID在不断变化(如上面所示)。我怎样才能永久地扼杀这些过程?如果有差异,我是用户"root",并且没有用户"django“的登录。
发布于 2016-09-02 15:56:32
lsof只显示实际绑定到端口的子进程。你需要杀死主进程。如果您使用--pid选项启动gunicorn,您可以给它一个文件名来存储进程的PID,那么您可以直接杀死它;如果不是,您可以从ps|grep gunicorn获得它。
更好的是,正如elethan在评论中所建议的那样,使用您的系统中存在的任何流程管理器--系统、新启动、主管或其他什么--将gunicorn设置为一个服务,并使用它来启动和停止它。
https://stackoverflow.com/questions/39296335
复制相似问题