温馨提示×

linux gitlab怎么找回密码

小樊
45
2026-09-19 15:12:48
栏目: 智能运维

Linux 上的 GitLab(通常是 Omnibus 或源码安装)忘记密码,一般通过 命令行重置用户密码 最稳妥。下面按常见情况说明:


一、Omnibus 安装(最常见,如 /opt/gitlab

1. 进入 GitLab Rails 控制台

sudo gitlab-rails console -e production

等待进入 irb 界面。

2. 查找用户(按用户名或邮箱)

user = User.find_by(username: 'your_username')
# 或
user = User.find_by(email: 'your_email@example.com')

3. 重置密码

user.password = 'NewPassword123'
user.password_confirmation = 'NewPassword123'
user.save!

看到 => true 就成功了。

4. 退出

exit

二、Docker 安装的 GitLab

docker exec -it gitlab bash
gitlab-rails console -e production

然后同上操作。


三、源码安装(非 Omnibus)

cd /home/git/gitlab
sudo -u git bundle exec rails console -e production

再执行上面的 User.find_by ... save! 操作。


四、管理员账号(root)密码忘了

同样用控制台:

user = User.where(id: 1).first
user.password = 'NewAdminPass123'
user.password_confirmation = 'NewAdminPass123'
user.save!

五、其他方式(不推荐但可用)

1. 邮件找回

如果 SMTP 配置正常:

  • 登录页 → Forgot your password?
  • 输入邮箱 → 收邮件重置

2. LDAP / SSO 登录

若 GitLab 接了 LDAP,则用目录账号登录,不改 GitLab 密码。


六、注意事项

  • 密码不要太简单,否则 save! 会报错
  • 生产环境必须用 -e production
  • 修改后用户可能需要重新登录

如果你愿意,可以告诉我:

  • GitLab 安装方式(Omnibus / Docker / 源码)
  • 是不是 root 用户
  • 报错信息(如有)

我可以按你的环境一步步帮你恢复。

0