GitLab CE 在 Debian 12 上重置 root 密码

发表于 2025-09-09 13:40:22 分类于 默认分类 阅读量 99

GitLab CE 在 Debian 12 上重置 root 密码

如果你在 GitLab CE 中忘记了 root 用户密码,可以通过命令行快速重置。本文整理了两种方法:通过 Rails 控制台重置,以及一行命令直接重置。


🔑 方法一:使用 Rails 控制台重置密码

  1. 打开终端,进入 GitLab Rails 控制台:
sudo gitlab-rails console -e production
  1. 在控制台中执行以下 Ruby 命令,将密码重置为 NewPassword123(可自行修改):
user = User.find_by(username: 'root')
user.password = 'NewPassword123'
user.password_confirmation = 'NewPassword123'
user.save!

执行成功后会显示 true,表示密码已修改成功。

  1. 退出控制台:
exit
  1. 使用新密码登录 GitLab:
http://你的服务器IP或域名

账号:root 密码:你刚设置的新密码


⚡ 方法二:一行命令直接重置 root 密码

如果不想进入 Rails 控制台,可以使用以下一行命令(以 NewPassword123 为例):

sudo gitlab-rails runner "u = User.find_by(username:'root'); u.password='NewPassword123'; u.password_confirmation='NewPassword123'; u.save!"

执行完成后即可直接用新密码登录。


💡 额外提示

  1. 确保 GitLab 服务运行正常
sudo gitlab-ctl status
  1. 生成随机密码

如果想快速生成一个安全随机密码,可在 Rails 控制台使用:

user.password = SecureRandom.hex(10)

这会生成一个 20 位随机密码,你可以复制使用。

  1. 修改后立即登录,确认密码修改成功。

✅ 总结

  • 使用 Rails 控制台可以手动设置任意密码
  • 使用 gitlab-rails runner 可一行命令完成重置
  • 提示:务必确保 GitLab 服务正常运行,否则修改可能失败
正物博客
一路向前,山海自平