温馨提示×

linux gitlab怎么恢复

小樊
41
2026-10-10 09:12:03
栏目: 智能运维

你说的“Linux GitLab 怎么恢复”,通常有以下几种常见场景。我先按最常见的几种情况给你说明,你可以对照自己的情况做:


一、GitLab 服务挂了 / 无法启动(恢复服务)

1. 查看状态

sudo gitlab-ctl status

2. 重启 GitLab

sudo gitlab-ctl restart

3. 只重启某个组件(如 nginx、sidekiq)

sudo gitlab-ctl restart nginx

4. 查看错误日志

sudo gitlab-ctl tail
# 或指定组件
sudo gitlab-ctl tail nginx

二、GitLab 配置文件改坏了(恢复配置)

1. 重新生成配置

sudo gitlab-ctl reconfigure

2. 回滚 gitlab.rb

如果你改了 /etc/gitlab/gitlab.rb:

sudo cp /etc/gitlab/gitlab.rb /etc/gitlab/gitlab.rb.bak
# 用备份或历史版本恢复后
sudo gitlab-ctl reconfigure

三、GitLab 数据丢失(从备份恢复)✅ 最常见

1. 查看已有备份

ls -lh /var/opt/gitlab/backups/

备份文件类似:

1690000000_2023_07_22_gitlab_backup.tar

2. 停止相关服务

sudo gitlab-ctl stop puma
sudo gitlab-ctl stop sidekiq

3. 执行恢复

sudo gitlab-backup restore BACKUP=1690000000_2023_07_22

4. 恢复配置和密钥(非常重要)

# 恢复 gitlab.rb 和 gitlab-secrets.json
sudo cp /backup/gitlab.rb /etc/gitlab/gitlab.rb
sudo cp /backup/gitlab-secrets.json /etc/gitlab/gitlab-secrets.json
sudo gitlab-ctl reconfigure

5. 启动 GitLab

sudo gitlab-ctl start

四、误删仓库(但本地还有代码)

如果 GitLab 上的项目被删,但你有本地代码:

git remote add gitlab git@your-gitlab.com:group/project.git
git push -u gitlab master

五、整个服务器崩溃(重装后恢复)

恢复顺序:

  1. 重装同版本 GitLab
  2. 恢复 /var/opt/gitlab/backups/
  3. 恢复 /etc/gitlab/
  4. gitlab-backup restore
  5. gitlab-ctl reconfigure

⚠️ 版本必须一致,否则可能恢复失败


你可以告诉我:

  • 是 服务起不来?
  • 还是 数据丢了要恢复备份?
  • 还是 误删项目 / 用户?
  • 用的是 Omnibus 安装 还是 Docker / 源码?

我可以给你精确的一条命令恢复方案。

0 踩