跳到主要内容

~/posts · 2026.10.28

核心明明在跑,界面却说它没启动

一次 S3 地址输入问题,被三层含糊的状态处理藏成了“内核启动失败”。

1 分钟 devshan

手机装上包以后一直提示核心没起来。我把本地端口转出来请求健康检查,核心返回正常;再看存储状态,才发现 S3 Endpoint 填了完整的 https://...,HTTPS 开关却关着,主机名前面还多了一层桶名。

核心在运行,存储连接配置错了,界面把它们报成了同一个问题。

Go 侧端点参数需要主机和端口,表单却允许直接粘贴 URL。我补了保存前的解析:HTTP 或 HTTPS 决定 TLS,协议头移除后再交给底层库,非法协议、内嵌账号密码和错误端口直接在表单提示。

当前按路径访问桶,bucket.example.com 这种输入还可能让桶名拼两遍。符合现有规则的地址会先归一化,再把实际连接地址显示出来。

顺着保存流程又找到一处遗漏:表单更新了,核心进程还拿着旧参数。现在保存当前激活配置后会重启核心并验证连接,查看其他配置只展示内容,激活时才切换;有传输任务时先处理任务。

连接提示也分成核心无响应、配置被拒绝和存储失败。配置错误给编辑入口,网络问题可以重试。文件页有缓存就保留原内容,同时标出离线。

我在 ARM 手机上重新检查了核心和存储健康状态。模拟器的内嵌核心兼容问题还留着,后面另查。