【无标题】unix:///tmp/supervisor.sock no such file

✅ 你的 supervisord 实际 sock 文件路径是:

复制代码
/tmp/supervisor.sock.2219324

这是从 lsof 得到的:

复制代码
/tmp/supervisor.sock.2219324

这说明:

  • supervisord.conf 中写的是 /tmp/supervisor.sock
  • 但 supervisor 启动时发现已有同名 sock ,所以自动创建了一个带 PID 后缀的文件:
    /tmp/supervisor.sock.<old_pid>

因此 supervisorctl 无法连接 /tmp/supervisor.sock(因为文件不存在)。

这是经典问题:旧 sock 未清理 + supervisord 被错误重启


🔥 立即修复(最干净的做法)

1️⃣ 杀掉 supervisord(安全)

bash 复制代码
sudo pkill supervisord

确认停止:

bash 复制代码
ps -ef | grep supervisord

2️⃣ 删除所有残留 sock 文件

bash 复制代码
sudo rm -f /tmp/supervisor.sock*

3️⃣ 重新启动 supervisord(用正确配置)

bash 复制代码
sudo /data/anaconda3/envs/py313/bin/supervisord -c /etc/supervisor/supervisord.conf

确认 sock 创建:

bash 复制代码
ls -l /tmp/supervisor.sock

应该出现:

复制代码
/tmp/supervisor.sock

4️⃣ supervisorctl 就能正常连接了

bash 复制代码
sudo /data/anaconda3/envs/py313/bin/supervisorctl -c /etc/supervisor/supervisord.conf status

再执行你想要的命令:

bash 复制代码
sudo /data/anaconda3/envs/py313/bin/supervisorctl -c /etc/supervisor/supervisord.conf restart med_unieval_server

🧠 为什么之前会有 .PID 后缀?

因为 supervisord 之前崩过、被 kill -9 过,或系统异常重启,导致旧 sock 未清理。

supervisord 启动时发现 /tmp/supervisor.sock 已存在,为避免冲突自动改名为:

复制代码
/tmp/supervisor.sock.<old_pid>

但 supervisorctl 仍然尝试连接 /tmp/supervisor.sock → 报错。

相关推荐
DeeplyMind15 分钟前
linux VMA创建场景详解
linux·mmap·vma
扛枪的书生31 分钟前
Ansible 学习总结
linux
赵民勇1 小时前
cut命令详解
linux·shell
闻道且行之1 小时前
Linux|CUDA与cuDNN下载安装全指南:默认/指定路径双方案+多CUDA环境一键切换
linux·运维·服务器
Ahtacca1 小时前
Linux环境下前后端分离项目(Spring Boot + Vue)手动部署全流程指南
linux·运维·服务器·vue.js·spring boot·笔记
_w_z_j_1 小时前
Linux----Socket编程基础
linux·运维·服务器
默|笙1 小时前
【Linux】进程控制(3)进程程序替换
android·linux·运维
xlxxy_2 小时前
abap 批量创建供应商
运维·开发语言·sap·abap·pp·mm
老前端的功夫2 小时前
TypeScript 全局类型声明:declare关键字的深度解析与实战
linux·前端·javascript·ubuntu·typescript·前端框架
赵民勇2 小时前
join命令使用指南与技巧
linux·shell