gitlab-ce 移动git库的保存目录

gitlab-ce 移动git库的保存目录

gitlab-ce 默认把 git 库保存到 /var/opt/gitlab/git-data 目录,如果 /var 目录没有单独挂载磁盘,则会占用 / 目录。本文介绍一个移动目录的方法。以移动到 /data/git-data/ 为例

第一步:创建目标目录


mkdir /data/git-data

第二步:修改配置


在配置文件 /etc/gitlab/gitlab.rb 添加配置项:

gitaly['configuration'] = {
  pack_objects_cache: {
    enabled: true,
    dir: '/data/git-data/repositories/+gitaly/PackObjectsCache',
    max_age: '5m',
  },
  storage: [
    {
      name: 'default',
      path: '/data/git-data/repositories',
    },
  ],
}

其中配置文件中,gitaly['configuration']['storage']['name'] 默认是 default ,可以在管理台查看具体名字。

使用 root 用户登录,切换到 管理员 操作页面,打开 【概览】->【Gitaly服务器】页面查看。

第三步:迁移数据


# 1. 停止 GitLab 服务,防止迁移过程中有新数据写入
gitlab-ctl stop

# 2. 使用 rsync 同步数据(比 cp 更安全,即使中断也可以断点续传)
# 注意源路径是 /var/opt/gitlab/git-data/repositories,目标路径不要写错
rsync -av /var/opt/gitlab/git-data/repositories /data/git-data/

第四步:应用配置并启动


# 1. 重新配置 GitLab,这一步会创建必要的目录并更新 Gitaly 设置
gitlab-ctl reconfigure

# 2. 启动所有 GitLab 服务
gitlab-ctl start

注意:每次修改 /etc/gitlab/gitlab.rb 配置文件后,都需要运行 gitlab-ctl reconfigure 让配置生效。

至此 git库 文件保存目录已经迁移到新的路径下。

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注