注:一开始没有考虑到把gitlab划分好存储目录,占用系统磁盘,因为gitlab是默认安装的,随着公司代码愈来愈多,致使gitlab数据目录空间不足php
磁盘空间:git
[root@gitlab ~]# df -hT Filesystem Type Size Used Avail Use% Mounted on /dev/vda1 ext4 40G 25G 13G 67% /
注:由于使用的阿里云服务,因此考虑另挂载一块磁盘专用于gitlab存储。
······ 云盘挂载,磁盘分区就直接略过。web
默认状况下omnibus-gitlab 将仓库数据存储在 /var/opt/gitlab/git-data
目录下,仓库存放在子目录 repositories
里面。 以能够经过修改/etc/gitlab/gitlab.rb
的这一行来自定义 git-data 的父目录shell
[root@gitlab ~]# vim /etc/gitlab/gitlab.rb # 把注释取消而后指定新的仓库存储位置 git_data_dirs({ "default" => { "path" => "/data/git-data" } })
注: /data/git-data 是我新挂载的目录,
注意 :目标路径和其子路径必须不能为软连接。vim
1.1 ,在没有数据的状况下bash
[root@gitlab ~]# gitlab-ctl stop [root@gitlab ~]# gitlab-ctl reconfigure //使修改生效
1.2,若是 /var/opt/gitlab/git-data
目录已经存在Git仓库数据, 你能够用下面的命令把数据迁移到新的位置:gitlab
# 准备迁移以前要中止GitLab服务,防止用户写入数据。 [root@gitlab ~]# gitlab-ctl stop # 注意 'repositories'后面不带斜杠,而 # '/data/git-data'后面是有斜杠的。 [root@gitlab ~]# rsync -av /var/opt/gitlab/git-data/repositories /data/git-data
# 若是须要修复权限设置, # 可运行下面的命令进行修复。
[root@gitlab ~]# gitlab-ctl reconfigure # 再次检查下 /data/git-data的目录. 正常状况应该有下面这个子目录: # repositories
[root@gitlab ~]# ls /data/git-data
repositories # 完工! 启动GitLab,验证下是否能 # 经过web访问Git仓库。
[root@gitlab ~]# gitlab-ctl start
注意的是:自GitLab 8.10开始,能够经过在
/etc/gitlab/gitlab.rb
文件中添加下面的几行配置, 来增长多个 git 数据存储目录。阿里云
git_data_dirs({
"default" => { "path" => "/var/opt/gitlab/git-data" }, //默认存储目录 "alternative" => { "path" => " /data/git-data" } //备用存储目录 })