机场实测室JICHANGTUIJIAN.MOM
搜索线路 / 教程/
客户端教程

Clash Verge Rev 打不开或闪退时,先修这三处

一句话结论

客户端起不来,先分清是进程根本没启动,还是启动了但界面白屏。前者多为端口被占用或系统服务异常,后者多为配置文件损坏或渲染组件问题。通用修复顺序是:结束残留进程,再把当前配置改名或删除,重装系统服务,以管理员身份重启;仍无效再考虑备份配置目录后重装客户端。

这一篇处理的故障发生在联网动作之前:客户端本身跑不起来。节点好不好、订阅有没有过期,在这个阶段全都无关——你甚至还没有机会看到节点列表。所以排查思路也和其他连接类问题完全不同,不要拿「换个节点试试」的习惯来套。

真正决定后续动作的,是一个很朴素的分叉:进程到底有没有起来。双击之后什么都没有、任务管理器里也找不到,和窗口开了但一片空白,虽然在用户看来都是「打不开」,底层原因几乎不重叠。前者卡在启动阶段,常见于端口被占、残留进程、服务异常;后者已经通过了启动检查,问题出在配置解析或界面渲染。

下面的内容按这个分叉展开,再给出四个检查点的固定顺序。请按顺序做,尤其不要跳过第一步就去重装——重装能解决问题,但也会连带把订阅和自定义规则一起清掉,而这些恰恰是最难恢复的部分。

第一步:是进程没起来,还是界面白屏

你看到的现象任务管理器里有无进程归类优先检查
双击后毫无反应启动失败残留进程、端口占用
双击后毫无反应有,且不止一个实例冲突结束全部同名进程
窗口一闪而过短暂出现后消失闪退配置文件、系统服务
窗口打开但全白渲染或配置异常当前配置、界面缓存
窗口正常但功能全灰内核未启动内核进程与服务状态
托盘有图标点不开窗口窗口状态异常托盘右键菜单里选显示

最后一行值得单独提一句,因为它经常被当成故障:客户端默认最小化到托盘,窗口没弹出来是正常行为,右键托盘图标选打开主界面即可。确认这一点再往下排查,能省掉不少无效动作。

残留进程和端口占用怎么确认

这两件事经常同时发生,因为占用端口的往往就是自己上次没退干净的进程。

先看进程。客户端通常有两个进程:界面进程和内核进程,名字不同,可能只死了一个。全部结束掉再启动。

# 结构示例:把 <进程名> 换成你实际看到的进程名称
Get-Process -Name "<进程名>" -ErrorAction SilentlyContinue | Format-Table Id, ProcessName, StartTime

再看端口。混合代理端口和外部控制端口是最常被抢的两个,前者用于承接流量,后者用于界面与内核通信。控制端口被占时的典型表现就是界面全灰、什么都点不动。

# 结构示例:把 <端口号> 换成设置页里显示的端口
Get-NetTCPConnection -LocalPort <端口号> -State Listen | Select-Object LocalPort, OwningProcess

拿到 OwningProcess 里的进程号,再回去查它属于哪个程序。常见占用方有三类:上一次没退干净的自己、另一个同时装着的代理客户端、以及某些开发工具的本地服务。

占用方判断特征处理方式
自己的残留进程进程名与客户端一致结束进程,以后用托盘正常退出
另一个代理客户端进程名是别的代理工具决定长期只留一个,不要都开
开发工具或本地服务进程名与网络无关改客户端端口,别去动那个服务

改端口是最后手段,不是首选。端口一旦改过,你自己配过的浏览器插件、终端代理变量、其他工具的代理设置都得跟着改一遍,后续的排查成本会变高。

配置文件损坏会有哪些典型表现

配置损坏最典型的两个场景:上一次更新订阅只写了一半就断电或强杀进程,以及手动编辑配置后语法出错。表现相当有辨识度:

  • 启动时窗口一闪而过,日志里出现解析失败一类的记录。
  • 界面能开但节点列表空白,切换配置时报错。
  • 每次启动都停在某个特定配置上,换成另一份就正常。

验证方法只有一个,而且很干脆:让客户端拿不到这份配置。去 profiles 目录把当前使用的配置文件改个名(不要删,改名可逆),再启动客户端。能正常起来,说明问题就在这份文件上;仍然起不来,说明配置是无辜的,继续查服务。

确认是配置问题后,不要试图手工修复损坏的 YAML,重新拉一次订阅更快。如果重新拉取本身也失败,那是另一条链路的问题,按 Clash 订阅更新失败的四层排查处理。

手动改过配置的人要额外注意缩进。YAML 对缩进极其敏感,多一个空格就可能让整份文件解析失败,而报错信息经常指向一个看起来毫无关系的行号。

系统服务异常时该怎么重装

服务负责需要更高权限的动作,比如创建虚拟网卡、改写路由。它出问题时的表现集中在两类:TUN 相关功能整体不可用,以及启动时提示服务未安装或无法连接。

重装顺序建议这样走:

  1. 完全退出客户端,包括托盘图标和残留进程。
  2. 在客户端设置页里先执行卸载服务,而不是直接重装。旧的注册信息不清掉,重装经常失败。
  3. 重启系统。这一步不能省,服务相关的句柄需要重启才会彻底释放。
  4. 以管理员身份启动客户端,执行安装服务,弹出权限确认时必须允许。
  5. 安装完成后先不要开 TUN,确认基础功能正常再说。

如果安装动作看起来执行了、状态却还是未安装,去安全软件的拦截记录里翻最近几分钟的条目——静默拦截是这一步最常见的隐形阻力。服务与首次配置的先后关系,在 Clash Verge Rev 首次启动里有完整说明;如果重装服务之后出现了整机断网,那是另一类故障,按 TUN 导致整机断网的排查流程处理。

日志文件在哪里,该重点看哪几行

日志是这类故障里唯一能给出确切原因的东西,但没必要通读。按下面这张表定位关键行就够了:

日志里出现的内容指向的问题对应动作
端口被占用、address already in use端口冲突查占用进程
解析失败、unmarshal、yaml 相关报错配置文件损坏或语法错误配置改名后重启
权限被拒绝、access denied权限或服务问题管理员身份运行、重装服务
服务连接失败、service not found系统服务未注册按上一节重装服务
网卡创建失败、device open failed虚拟网卡问题关掉 TUN 再启动
找不到配置文件、no such file配置目录被移动或清理检查配置目录是否完整

日志目录一般和配置目录同级,客户端设置页里通常有直接打开目录的入口。看日志有个技巧:先按时间倒序找最后一次启动的那一段,只读那一段。往上翻的都是历史记录,和这次故障无关。

重装之前哪些目录必须先备份

到了这一步,先停一下。重装客户端会把下面这些东西一起带走,而它们比客户端本身难恢复得多。

要备份的内容通常在哪丢了的后果
订阅配置文件profiles 目录需要重新拉订阅,链接找不到就得回机场后台取
订阅链接本身客户端配置项 / 自己另存最麻烦的一项,建议单独存一份纯文本
自定义规则与脚本profiles 或 scripts 目录手写的分流规则全部丢失
应用设置应用配置文件端口、开机启动、TUN 等选项要重设一遍
日志logs 目录排查线索消失,复发时又要从头查

备份方法很简单:把整个配置根目录复制一份到别处,不要只挑单个文件。重装完成后如果需要恢复,再从副本里逐项挑回来,而不是整目录覆盖——覆盖会把可能已经损坏的那份配置又搬回来。

卸载时如果安装程序提供了「保留用户数据」选项,勾上它并不能替代备份。不同版本对「用户数据」的界定不一致,自己复制一份才是可靠的。

修好之后如何避免同样的问题复发

复发场景高度集中,三个习惯就能覆盖大部分:

  • 正常退出。用托盘菜单退出,而不是在任务管理器里强杀。强杀是配置写坏和端口残留的头号来源。
  • 升级前先备份配置目录。版本更新偶尔会改动配置结构,备份是唯一的后悔药。
  • 同一台机器上不要常驻多个代理客户端。它们会抢同一批默认端口,而且冲突表现往往是间歇性的,极难排查。

再加一条更靠前的建议:客户端能起来之后,先确认订阅本身可用,再去调 TUN、DNS 这些进阶开关。把变量一次引入一个,出问题时才知道是谁的锅。如果启动恢复正常但节点全部超时,那已经是连通性层面的问题了,按 Clash 节点全红的排查顺序继续。

小结

客户端起不来的第一件事是判断进程有没有起来,这个分叉决定了后面查哪一边:没起来查残留进程和端口,起来了查配置文件和渲染层。四个检查点的固定顺序是进程、端口、配置、服务,按顺序走通常在前两步就能收敛。配置是否有问题的验证方法是改名而不是删除,可逆且成本最低。日志只看最后一次启动的那一段,按关键字对照定位比通读高效得多。真到了要重装的地步,先把 profiles 目录、订阅链接和自定义规则备份出来——客户端可以随时装回来,这些东西不行。

常见问题

双击图标完全没反应,任务栏也不出现,是怎么回事?

先去任务管理器看有没有同名进程在后台。多数情况是上次退出时进程没结束干净,新进程启动后发现已有实例便直接退出。结束全部残留进程再启动通常就好了。

界面能打开但一片空白,点哪里都没反应,属于哪一类?

属于进程起来了、渲染层出问题。这类和端口、服务基本无关,优先怀疑配置文件损坏或界面缓存异常。把当前配置改名让客户端回落到空配置启动,是最快的验证手段。

提示端口被占用,换一个端口就行了吗?

可以临时解决,但要先看占用方是谁。如果是自己上次没退干净的残留进程,换端口只是绕过问题;如果是另一个代理客户端,应该决定长期只留一个,而不是让两个都在跑。

重装之前必须备份哪些东西?

至少三样:profiles 目录里的订阅与本地配置、自定义规则或脚本文件、以及应用设置。订阅链接本身也建议单独存一份纯文本,这是重装后恢复速度最快的东西。

反复出现启动失败,有没有办法一劳永逸?

把三个习惯固定下来:退出时用托盘菜单正常退出而不是强杀、升级前先备份配置目录、以及不要同时安装多个会抢同一端口的代理客户端。这三条覆盖了绝大多数复发场景。