You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Varnish服务启动失败:端口6081被占用问题求助

Varnish启动失败(端口被占用)解决方案

问题描述

执行状态查询命令后确认失败核心原因:6081端口已被占用,具体错误输出如下:

[root@neacdn1 system]# systemctl status varnish.service
● varnish.service - Varnish Cache,高性能HTTP加速器
已加载:已加载(/usr/lib/systemd/system/varnish.service; 已启用; 厂商预设:禁用)
活动状态:失败(结果:退出码) 于 2023-07-11 15:38:34 CEST; 1分7秒前
进程:3607765 ExecStart=/usr/sbin/varnishd -a :6081 -f /etc/varnish/default.vcl -s malloc,256m (代码=退出,状态=255)
Jul 11 15:38:34 neacdn1 systemd[1]: 正在启动Varnish Cache,高性能HTTP加速器...
Jul 11 15:38:34 neacdn1 varnishd[3607765]: 错误:无法获取套接字:6081:地址已被占用
Jul 11 15:38:34 neacdn1 varnishd[3607765]: (-? 查看使用说明)
Jul 11 15:38:34 neacdn1 systemd[1]: varnish.service: 控制进程退出,代码=退出状态=255
Jul 11 15:38:34 neacdn1 systemd[1]: varnish.service: 启动失败,结果为'exit-code'。
Jul 11 15:38:34 neacdn1 systemd[1]: 启动Varnish Cache(高性能HTTP加速器)失败。

解决步骤

1. 定位占用6081端口的进程

使用以下任意命令查询占用端口的进程信息:

  • 用lsof命令:
    lsof -i :6081
    
  • 用ss命令:
    ss -tulpn | grep :6081
    

执行后会得到进程PID和对应的程序名称。

2. 处理占用端口的进程

方案一:终止占用进程(如果该进程无用)

直接杀死占用端口的进程,替换<PID>为查到的进程ID:

kill -9 <PID>

方案二:修改Varnish监听端口(如果端口被其他必要服务占用)

  • 编辑Varnish的systemd配置文件:
    vi /usr/lib/systemd/system/varnish.service
    
  • 找到ExecStart行,将-a :6081修改为其他未被占用的端口(比如-a :6082)
  • 重新加载systemd配置:
    systemctl daemon-reload
    

3. 重启Varnish并验证状态

systemctl start varnish.service
systemctl status varnish.service

内容的提问来源于stack exchange,提问作者kamalpreet cor

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 07:12:35