问题诊断 · 客户端

客户端内核无法启动怎么办:Clash / Mihomo / sing-box 常见报错含义与逐条处理

点开客户端,内核一直在「启动中」、状态变红,日志里有一行报错。本文把 Clash、Mihomo、sing-box 内核最常见的报错按类型整理:端口占用、配置解析失败、权限不足、内核文件被安全软件删除、依赖缺失,每条解释原因并给出处理步骤。

先学会看日志

内核启动失败的信息都在日志里,不看日志靠猜效率极低。

报错一般在最后几行,带 FATAL、ERRO、error 字样。下面按最常见的报错逐条说。

一、端口被占用

报错样例

listen tcp 127.0.0.1:7897: bind: address already in use
Start Mixed server error: ... only one usage of each socket address
External controller listen error

原因:内核要监听混合端口(7897 / 7890)、SOCKS 端口(1080 / 7891)、API 端口(9090 / 9097)中的某一个,但端口已经被占用。常见占用者:

  1. 上一次客户端没正常退出,旧内核进程还活着(最常见);
  2. 同时开了另一个代理客户端(Clash Verge 和 v2rayN 一起开);
  3. 其他软件恰好用了同一端口(开发工具、下载软件、某些游戏加速器)。

处理

二、配置解析失败

报错样例

yaml: unmarshal errors: line 23: cannot unmarshal !!str into int
parse config error: proxy 0: unsupport proxy type: xxx
rules[12] [DOMAIN-SUFFIX,,DIRECT] error: ...
decode config: json: invalid character '}' looking for beginning of object key string

原因:配置文件不符合内核要求。分几种:

处理

  1. 订阅自动生成的配置出问题:先「更新订阅」一次,多数能解决。
  2. 手改过配置:用在线 YAML 校验(或 mihomo -t)、JSON 校验(或 sing-box check)定位到行,修正后再启动。
  3. 覆写脚本导致的错误:Clash Verge Rev 里先禁用全部覆写,能启动就是覆写有问题,逐个启用定位。
  4. 内核不支持:切 Mihomo 内核(Clash Verge Rev 设置里的「Clash 内核」切换),或更新 sing-box 到配置要求的版本。

三、权限不足

报错样例

operation not permitted
Start TUN listening error: ... requires elevated privileges
create tun: ... Access is denied
failed to create tun interface

原因:TUN 模式需要创建虚拟网卡,这是系统级操作。普通用户权限做不到。

处理

四、内核文件被安全软件删除

报错样例

系统找不到指定的文件
spawn ENOENT
Failed to start core: core file not found

原因:Windows Defender、360、火绒、腾讯电脑管家把 mihomo.exe、xray.exe、sing-box.exe 当成木马隔离了。这些内核因为有流量伪装能力,误报率一直很高。macOS 的 Gatekeeper 则会把未签名的内核标记为「已损坏」拒绝运行。

处理

  1. 到安全软件的隔离区 / 病毒防护历史恢复文件。
  2. 把客户端整个安装目录和数据目录加入信任区。
  3. 在客户端设置里重新下载内核,或切换到客户端自带的另一个内核版本。
  4. macOS 终端执行 xattr -cr /Applications/客户端名.app 去掉隔离标记。
  5. 以后更新客户端前先临时关闭实时防护,更新完再加白名单。

下载来源不对也会让安全软件更警觉,下载客户端只走官方仓库,见客户端下载安全指南。

五、运行时初始化失败

启动过程没报语法错,但内核跑几秒就退出:

这类错误要把日志级别调到 debug,看最后一条非 info 的记录。

六、依赖和环境

七、客户端与内核版本不匹配

客户端更新了但内核没更新(或反过来),客户端生成的配置包含内核不认的字段。Clash Verge Rev 在设置里能看到内核版本并一键升级;sing-box 系客户端通常要求内核版本在某个范围内,看客户端发布说明。更新相关的问题可以参考 Clash Verge 打不开怎么办。

八、没有任何报错,一直卡在「启动中」

日志为空、状态一直转圈,通常不是内核的错,而是客户端界面没拿到内核的回应:

处理顺序

  1. 看日志最后几行,确定报错类型;
  2. 端口占用 → 结束残留进程;
  3. 解析失败 → 更新订阅 / 禁用覆写 / 校验语法 / 换 Mihomo 内核;
  4. 权限 → 管理员 / 服务模式 / 允许系统扩展;
  5. 文件丢失 → 安全软件隔离区恢复 + 白名单;
  6. 运行时退出 → debug 日志,查 DNS、Provider;
  7. 以上无效 → 卸载干净(含数据目录),重新安装最新版,重新导入订阅。

相关

Mihomo 内核说明 · sing-box 客户端教程 · Clash Verge Rev 教程

常见问题

日志里 bind: address already in use 是什么意思?

内核要监听的端口(如 7897、7890、9097)已经被别的程序占着。多半是上次没退干净的内核进程,或另一个代理软件。结束占用进程或改端口。

报 yaml: unmarshal errors 或 parse config error 怎么办?

配置文件格式错了:缩进不对、冒号后没空格、字段名拼错、用了内核不支持的字段。看报错里的行号,用在线 YAML 校验工具检查;订阅配置出问题就重新更新订阅。

客户端目录里内核文件不见了?

被安全软件当病毒删了。从隔离区恢复,把客户端目录加入白名单,然后在客户端设置里重新下载或切换内核。

TUN 模式一开内核就启动失败?

TUN 需要管理员 / root 权限或服务模式。Windows 以管理员运行或安装服务,macOS 允许系统扩展或输入密码,Linux 给内核加 cap_net_admin 能力。

内核启动了几秒又自己退出?

一般是配置通过了语法检查但运行时出错:DNS 无法初始化、Provider 下载失败、规则集文件缺失。把日志级别调成 debug 看最后几行。


本文为信息整理与个人经验,不构成购买建议。机场政策与软件界面可能变化,以官方为准。发现过期内容请 联系纠错。

继续阅读

回到 问题诊断 · 机场推荐 2026 · 排行榜