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库 文件保存目录已经迁移到新的路径下。


发表回复