本文目录
  1. 问题表现
  2. 原因分析
  3. 第一步:使用 root 登录服务器
  4. 第二步:确认 root 私钥存在
  5. 第三步:恢复宝塔本机 SSH 配置
  6. 这条命令会修复什么?
  7. 第四步:验证是否恢复成功

最近在服务器部署 Hysteria2 时,遇到了一个非常奇怪的问题。

安装完成后,发现 宝塔面板的文件管理突然没有权限了,AI 开发环境一直部署失败,各种提示权限不足。当时一直以为是目录权限、SELinux 或者宝塔自身的问题,折腾了半天都没解决。

后来仔细排查才发现,宝塔终端登录用户竟然不知道什么时候从 root 变成了 hysteria

最后借助 Codex 分析了很久,终于找到原因并修复成功。

如果你和我一样是小白,其实不用完全理解原理。可以直接在服务器安装一个 Codex,把本文的原因解决方案发给它,让 AI 帮你执行即可。我自己也是 AI 帮忙修好的。

---

问题表现#

安装 Hysteria2 后,可能会出现以下现象:

  • 宝塔文件管理无法编辑、删除、上传文件
  • 文件管理提示权限不足
  • AI 部署项目一直失败
  • 宝塔终端打开后执行:
whoami

结果显示:

hysteria

而不是:

root

---

原因分析#

安装 Hysteria2 时,会自动创建一个名为 hysteria 的系统服务账户,用于运行 Hysteria 服务。

正常情况下,这个账户没有任何问题。

真正的问题在于:

宝塔面板后续不知道什么原因,将本机 SSH 登录配置切换成了 hysteria 用户,而不是 root 用户。

因此:

  • 宝塔终端使用的是 hysteria 登录
  • 文件管理调用终端时也使用 hysteria
  • 由于 hysteria 没有 root 权限,因此整个文件管理都会出现权限问题。
注意:千万不要删除 hysteria 账户!
它是 Hysteria2 正常运行所依赖的服务账户,删除后可能导致代理服务无法启动。

---

# 解决方法

第一步:使用 root 登录服务器#

先通过 SSH 或服务器控制台,以 root 身份登录服务器。

---

第二步:确认 root 私钥存在#

执行:

test -f /root/.ssh/id_ed25519 && echo "root key exists"

如果输出:

root key exists

说明可以继续下一步。

---

第三步:恢复宝塔本机 SSH 配置#

进入宝塔目录:

cd /www/server/panel

执行下面命令(如果你的 SSH 端口不是 22,请把命令里的两个 22 都改成实际端口):

./pyenv/bin/python3 -c "import sys; sys.path.insert(0,'/www/server/panel/class'); import ssh_terminal; key=open('/root/.ssh/id_ed25519').read(); a=ssh_terminal.ssh_host_admin(); [a.save_ssh_info(n,{'host':h,'port':22,'ps':'本机Root','sort':0,'username':'root','password':'','pkey':key,'pkey_passwd':''}) for n,h in [('127.0.0.1_22','127.0.0.1'),('localhost','localhost')]; print('root terminal configuration restored')"

执行成功后,会提示:

root terminal configuration restored

---

这条命令会修复什么?#

执行后会同时恢复:

  • 宝塔面板【终端】
  • 宝塔【文件管理 → 终端】

两处都会重新使用 root 登录。

---

第四步:验证是否恢复成功#

关闭当前宝塔终端。

然后:

1. 强制刷新浏览器(Ctrl + Shift + R)

2. 重新打开宝塔终端

3. 执行:

whoami

如果输出:

root

说明已经恢复成功。

---

# 特殊情况

如果执行时提示:

/root/.ssh/id_ed25519 不存在

说明服务器没有保存 root 的 SSH 私钥。

这种情况:

  • 需要使用服务器原来的 root 私钥重新配置;
  • 不能hysteria 账户恢复 root 登录信息。

---

# 总结

这并不是 Hysteria2 本身的 Bug,而是安装后宝塔本机 SSH 登录配置意外切换到了 hysteria 用户,导致终端和文件管理都失去了 root 权限。

遇到这种情况,不要急着:

  • ❌ 删除 hysteria 用户
  • ❌ 重装宝塔
  • ❌ 重装系统

只需要恢复宝塔本机 SSH 登录配置,让它重新使用 root 即可。

希望这篇文章能帮大家少走一些弯路。如果你也是在安装 Hysteria2 后遇到宝塔文件管理权限异常的问题,可以按照本文的方法尝试修复。