更新:我已按照 ChatGPT 的说明完成操作:
步骤 1:SSH 登录到您的服务器
ssh your-user@your-server
步骤 2:进入 Discourse 应用容器
cd /var/discourse
./launcher enter app
步骤 3:创建或重置管理员用户的密码
此步骤可确保您可以使用已知密码登录。
rake admin:create
- 出现提示时,请输入备份中的管理员的电子邮件地址(例如
admin@forum.example.com)。 - 输入新密码。
- 当询问是否授予管理员权限时,键入
Y(即使该用户已经是管理员,也不会有影响)。
步骤 4:打开 Rails 控制台
rails c
步骤 5:按电子邮件查找用户
替换为您要重置的电子邮件:
user = User.find_by_email("admin@forum.example.com")
您应该会看到一些显示用户对象的输出。
步骤 6:禁用该用户的双重身份验证
user.user_second_factors.destroy_all
这将删除与该用户关联的所有双重身份验证密钥,而不会影响其他人。
步骤 7:退出控制台和容器
exit
步骤 8:通过 Web 登录
在浏览器中打开您的 Discourse 站点,并使用以下信息登录:
- 电子邮件:
admin@forum.example.com - 密码:您在步骤 3 中设置的密码
- 双重身份验证:将不再需要