Gitlab-找回root密码

  • 官方文档地址:https://docs.gitlab.com/ce/security/reset_root_password.html

  • 用root账号执行

    gitlab-rails console -e production
    

    在这里插入图片描述

  • 找到root用户

    user = User.where(id: 1).first
    

    或者

    user = User.find_by(email: 'admin@example.com')
    
  • 修改密码

    user.password = 'secret_pass'
    user.password_confirmation = 'secret_pass'
    
  • 保存

    user.save!
    
  • 操作样例

    [root@localhost ~]# gitlab-rails console -e production
    --------------------------------------------------------------------------------
    GitLab:       12.4.2 (393a5bdafa2)
    GitLab Shell: 10.2.0
    PostgreSQL:   10.9
    --------------------------------------------------------------------------------
    user = User.where(id: 1).first
    Loading production environment (Rails 5.2.3)
    irb(main):001:0> user = User.where(id: 1).first
    => #<User id:1 @root>
    irb(main):002:0> user.password='12345678'
    => "12345678"
    irb(main):003:0> user.password_confirmation='12345678'
    => "12345678"
    irb(main):004:0> user.save!
    Enqueued ActionMailer::DeliveryJob (Job ID: b4e0a054-5fea-487d-9b84-cef6c02d9f8f) to Sidekiq(mailers) with arguments: 	"DeviseMailer", "password_change", "deliver_now", #<GlobalID:0x00007f6ec7477a60 @uri=#<URI::GID gid://gitlab/User/1>>
    => true
    irb(main):005:0> 
    irb(main):005:0> exit
    [root@localhost ~]# 
    
### 修改GitLab Root用户密码的方法 当遇到遗忘GitLab root用户密码的情况时,可以通过拥有服务器权限来进行密码重置操作。对于已经运行中的GitLab实例而言,如果无法记住root用户的登录凭证,则需借助于具备适当访问级别的SSH连接至承载GitLab服务的主机来执行一系列指令完成密码更改过程[^2]。 #### 方法一:通过Rails控制台重置Root密码 1. 登录到GitLab所在的服务器并打开终端窗口。 2. 切换到`git`或指定用于运行GitLab的服务账户下: ```bash sudo su - git ``` 3. 启动GitLab Rails控制台环境: ```ruby gitlab-rails console production ``` 4. 找到目标用户(此处为root),并对该对象设置新密码: ```ruby user = User.where(id: 1).first # 假设root是第一个创建的用户 user.password = 'new_password_here' user.password_confirmation = 'new_password_here' user.save! ``` 5. 完成上述步骤后退出控制台,并重启GitLab使变更生效: ```bash gitlab-ctl restart ``` 此过程中所使用的命令能够有效地更新root用户的认证信息,从而允许管理员重新获得对该帐户的完全控制权[^4]。 #### 方法二:查看初始安装后的临时密码 如果是刚部署完毕的新GitLab实例,那么可以在特定的日志文件中找到最初分配给root用户的临时密码。通常情况下,这个位置位于`/etc/gitlab/.gitlab_initial_root_password`路径下的文本文件内;或者是启动期间产生的其他相关日志条目里[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值