gitlab-ce迁移(centos7--Rocky9)

gitlab-ce版本:16.7.7

迁移前系统:CentOS7
迁移后系统:Rocky9

一、迁移前准备

1. 完整数据备份

# 创建 GitLab 数据备份(包含数据库、仓库、上传文件等)

gitlab-backup create STRATEGY=copy SKIP=registry,artifacts

# 备份会生成类似:1689060000_2023_07_12_17.7.7_gitlab_backup.tar

2. 配置文件备份

# 备份关键配置文件

cp /etc/gitlab/gitlab.rb /etc/gitlab/gitlab.rb_`date +%F`

cp /etc/gitlab/gitlab-secrets.json /etc/gitlab/gitlab-secrets.json_`date +%F`

cp -R /var/opt/gitlab/nginx/conf /etc/gitlab/gitlab-nginx-conf-backup_`date +%F`

3. 验证备份完整性

# 检查备份文件

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

# 检查备份内容

tar -tf /var/opt/gitlab/backups/*_gitlab_backup.tar | head -n 20

如:tar -tf /var/opt/gitlab/backups/1752461811_2025_07_14_17.7.7_gitlab_backup.tar | head -n 20

二、迁移到新系统(CentOS 8/9 或新服务器)

1. 传输备份文件到新服务器

# 从源服务器传输(使用 SCP)
scp /var/opt/gitlab/backups/*_gitlab_backup.tar root@new-server:/var/opt/gitlab/backups/

# 传输配置文件 scp /etc/gitlab/gitlab*.bak root@new-server:/tmp/

2. 新服务器环境准备(RockyLinux 9)

# 安装依赖
dnf install -y curl policycoreutils wget
# 下载gitlab(示例为17.7.7)
wget --content-disposition https://packages.gitlab.com/gitlab/gitlab-ce/packages/el/9/gitlab-ce-17.7.7-ce.0.el9.x86_64.rpm/download.rpm

# 第一次安装与源服务器相同版本(示例为17.7.7)
dnf install -y gitlab-ce-17.7.7-ce.0.el9.x86_64.rpm

3. 恢复备份数据

# 复制备份文件到正确位置
cp /tmp/gitlab*_`date +%F` /etc/gitlab/

# 恢复配置文件
mv /etc/gitlab/gitlab.rb_`date +%F` /etc/gitlab/gitlab.rb
mv /etc/gitlab/gitlab-secrets.json_`date +%F`
/etc/gitlab/gitlab-secrets.json

# 设置文件权限
chmod 600 /etc/gitlab/gitlab-secrets.json

# 停止相关服务
gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq

# 执行恢复 (替换 TIMESTAMP)
chown git:git /var/opt/gitlab/backups/1752461811_2025_07_14_17.7.7_gitlab_backup.tar


gitlab-backup restore BACKUP=1752461811_2025_07_14_17.7.7

4. 重新配置并验证

# 重新配置 GitLab
gitlab-ctl reconfigure
gitlab-ctl restart

# 检查恢复状态
gitlab-rake gitlab:check SANITIZE=true


# 测试 Web 访问
curl -I http://localhost

<think>好的,我需要帮助用户解决在CentOS 8.5.2111 x86_64系统中使用yum无法下载库文件的问题。首先,我需要回忆一下CentOS 8的相关信息,特别是关于yum的问题。用户提到的是无法下载仓库包,这可能与仓库配置或网络连接有关。 首先,CentOS 8已经在2021年底停止维护,官方仓库可能已经迁移到vault.centos.org,而默认的镜像可能不再可用。所以用户可能需要将仓库源更换为vault镜像。此外,常见的解决方法包括检查网络连接、更新仓库缓存、清理yum缓存等。 接下来,我需要考虑用户提供的引用内容。引用[1]提到了在CentOS 7中安装yum-utils和其他工具,以及遇到镜像速度的问题,但用户现在用的是CentOS 8,可能需要类似的步骤,但仓库地址不同。引用[2]提到了处理deltarpm下载错误的情况,可能需要调整配置或更换仓库源。 可能的解决步骤包括: 1. 检查网络连接,确保能访问外部仓库。 2. 更新仓库配置文件,指向vault.centos.org或可靠的镜像站。 3. 清理yum缓存并重新生成。 4. 安装必要的工具如yum-utils。 5. 禁用可能出问题的仓库,启用正确的仓库。 6. 检查仓库GPG密钥是否有效。 7. 如果问题依旧,可能需要手动下载包或使用其他工具如dnf。 另外,用户可能需要禁用stream仓库或AppStream仓库的问题,特别是如果他们在使用CentOS 8之后的标准仓库。还可能涉及到安装epel-release或其他第三方仓库。 需要确保步骤适用于CentOS 8.5,并且考虑到官方仓库不再维护的情况,推荐使用vault镜像或迁移到替代系统如AlmaLinux或Rocky Linux,但用户可能暂时只想修复现有系统。 最后,生成相关问题需要考虑用户可能的后续疑问,比如迁移系统、特定包安装问题,或者仓库配置的详细调整。</think>### 解决 CentOS 8.5 yum 无法下载仓库包的问题 由于 CentOS 8 官方已于 2021 年底停止维护[^1],默认仓库源可能失效。以下是分步解决方案: --- #### **1. 替换仓库源为 Vault 镜像** 修改仓库配置文件,指向 CentOS 历史归档仓库: ```bash sudo sed -i &#39;s/mirrorlist/#mirrorlist/g&#39; /etc/yum.repos.d/CentOS-* sudo sed -i &#39;s|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g&#39; /etc/yum.repos.d/CentOS-* ``` --- #### **2. 清理并重建 Yum 缓存** ```bash sudo yum clean all # 清理旧缓存 sudo yum makecache # 生成新缓存 ``` --- #### **3. 安装必要工具** 确保依赖工具正常: ```bash sudo yum install -y yum-utils epel-release ``` --- #### **4. 禁用失效仓库** 临时禁用可能冲突的仓库: ```bash sudo yum-config-manager --disable AppStream BaseOS Extras sudo yum-config-manager --enable vault-ce* ``` --- #### **5. 手动下载修复(可选)** 若特定包下载失败(如 `deltarpm`[^2]),可手动下载: ```bash wget http://vault.centos.org/8.5.2111/BaseOS/x86_64/os/Packages/deltarpm-3.6-3.el8.x86_64.rpm sudo rpm -Uvh deltarpm*.rpm ``` --- #### **6. 升级到替代系统(长期建议)** 若问题持续,建议迁移到兼容系统(如 AlmaLinux/Rocky Linux): ```bash sudo dnf install -y https://dl.rockylinux.org/pub/rocky/8/migrate2rocky/migrate2rocky-1.0-4.el8.noarch.rpm sudo migrate2rocky -r ``` --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值