卸载 ForwardX
本页说明如何卸载面板和 Agent(当前版本:面板 2.3.266 / Agent 2.2.181)。卸载前请先确认是否需要备份数据库、配置和日志。
先备份
卸载可能删除服务、程序目录、容器或数据卷。生产环境建议先从面板导出备份,或手动备份数据库文件,再执行卸载。
卸载前确认
建议先确认以下几点:
- 是否还需要保留用户、主机、规则、套餐和订单数据。
- 是否还需要保留 Agent 主机上的转发规则。
- 是否使用 Docker 数据卷保存 SQLite 数据。
- 是否使用外部 MySQL / PostgreSQL。
如果只是暂时停用,不建议直接卸载,可以先停止服务:
# Docker 面板
docker stop forwardx-panel
# 本地 systemd 面板
systemctl stop forwardx-panel
# Agent
systemctl stop forwardx-agent卸载面板(Docker)
如果面板使用 Docker 安装,执行:
curl -fsSL https://raw.githubusercontent.com/poouo/Forwardx/main/scripts/install-panel-docker.sh | bash -s -- uninstall卸载完成后,检查是否还有残留容器或数据卷:
docker ps -a | grep forwardx
docker volume ls | grep forwardx一键卸载会先读取面板容器实际挂载到 /data 的 Docker volume,并把待删除卷名保存在部署目录,再删除容器和对应数据卷,最后删除部署目录。若数据卷仍被其他容器占用或 Docker 拒绝删除,脚本会以错误状态退出、显示具体卷名并保留部署目录,下一次卸载仍能定位该数据卷;在数据卷真正删除前重新安装,旧管理员账号和密码仍会继续生效。
外部 MySQL/PostgreSQL 中的表和管理员账号不属于 Docker 数据卷,一键卸载不会删除它们。重新安装后若仍连接同一个外部数据库,应继续使用原管理员凭据;需要全新初始化时,应先备份,再改用确认为空的新数据库。
只执行 docker rm、docker compose down 或删除 /opt/forwardx-docker 不属于完整卸载,这些操作默认都会保留数据卷。需要判断当前容器使用哪个卷时,可执行:
docker inspect forwardx-panel --format '{{range .Mounts}}{{println .Type .Name .Source .Destination}}{{end}}'Docker 数据卷
Docker 部署的数据通常保存在 Docker volume 中。删除容器不会自动删除数据卷;删除数据卷会永久清除 SQLite 数据库和持久化配置。确认已备份后,再手动删除对应数据卷。
卸载面板(本地 systemd)
如果面板使用本地 systemd 安装,执行:
curl -fsSL https://raw.githubusercontent.com/poouo/Forwardx/main/scripts/install-panel-local.sh | bash -s -- uninstall卸载完成后,检查服务和程序目录是否已清除:
systemctl status forwardx-panel
ls -la /opt/forwardx-panel脚本可能保留数据目录,确认不再需要后手动删除(见下方"清理遗留文件")。
卸载 Agent
在 Agent 所在服务器执行:
curl -fsSL https://raw.githubusercontent.com/poouo/Forwardx/main/scripts/install-agent.sh | bash -s -- uninstall确认服务已停止并移除:
systemctl status forwardx-agent只是换面板?
如果只是重新绑定到新面板,通常不需要卸载。在 Agent 主机重新执行当前面板提供的安装或升级命令即可。
清理遗留文件
卸载脚本可能不会删除所有文件。根据需要手动清理:
Agent 相关目录:
# 配置文件
ls -la /etc/forwardx/
# 运行时数据
ls -la /var/lib/forwardx-agent/
# 日志
ls -la /var/log/forwardx-agent/确认后手动删除:
rm -rf /etc/forwardx
rm -rf /var/lib/forwardx-agent
rm -rf /var/log/forwardx-agent面板相关目录(本地 systemd):
ls -la /opt/forwardx-panel确认后手动删除:
rm -rf /opt/forwardx-panel清理转发规则
正常卸载 Agent 时会尝试清理它维护的转发规则。如果怀疑仍有残留,可检查:
nft -a list table inet forwardx
iptables -t nat -S | grep -i forwardx
ip6tables -t nat -S | grep -i forwardx如果使用 nftables,确认没有业务依赖后,可删除 ForwardX 表:
nft delete table inet forwardx谨慎操作
不要随意清空整台机器的 iptables 或 nftables 规则。服务器防火墙、Docker、面板和其他业务可能也依赖这些规则。只针对 ForwardX 相关条目进行清理。
保留数据后重新安装
如果你保留了数据库和配置,重新安装时注意:
- 面板公开地址要填写当前可访问的域名或 IP,端口默认为
9810。 - 如果使用 HTTPS 反代,公开地址也要写
https://。 - Agent 失联时,在 Agent 主机重新执行当前面板提供的安装或升级命令。
- 外部数据库地址要从面板运行环境能访问;Docker 环境不要把
127.0.0.1当成宿主机数据库地址。