注:一開(kāi)始沒(méi)有考慮到把gitlab劃分好存儲(chǔ)目錄,占用系統(tǒng)磁盤(pán)蜒简,由于gitlab是默認(rèn)安裝的塑煎,隨著公司代碼越來(lái)越多,導(dǎo)致gitlab數(shù)據(jù)目錄空間不足.
由于gitlab通過(guò)rpm包安裝后臭蚁,默認(rèn)存儲(chǔ)位置在/var/opt/gitlab/git-data/repositories最铁,通常var分區(qū)很小,會(huì)打滿.
磁盤(pán)空間:
[root@bogon soft]# df -hT
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
ext4 50G 47G 492M 99% /
tmpfs tmpfs 2.9G 784K 2.9G 1% /dev/shm
/dev/sda1 ext4 477M 41M 411M 9% /boot
/dev/mapper/VolGroup-lv_home
ext4 144G 1.3G 135G 1% /home
可以看出 /home 這個(gè)磁盤(pán)很大垮兑,后面會(huì)遷移到 /home 這個(gè)磁盤(pán)下
設(shè)置存儲(chǔ)倉(cāng)庫(kù)數(shù)據(jù)
默認(rèn)情況下omnibus-gitlab 將倉(cāng)庫(kù)數(shù)據(jù)存儲(chǔ)在 /var/opt/gitlab/git-data目錄下冷尉,倉(cāng)庫(kù)存放在子目錄 repositories里面。 以可以通過(guò)修改/etc/gitlab/gitlab.rb 的這一行來(lái)自定義 git-data 的父目錄
[root@gitlab ~]# mkdir /home/data/gitlab/git-data //創(chuàng)建目錄
[root@gitlab ~]# vim /etc/gitlab/gitlab.rb //修改默認(rèn)路徑
# 把注釋取消然后指定新的倉(cāng)庫(kù)存儲(chǔ)位置
git_data_dirs({ "default" => { "path" => "/home/data/gitlab/git-data" } })
注: /home/data/gitlab/git-data 這個(gè)是手動(dòng)創(chuàng)建的目錄
使設(shè)置生效
1.沒(méi)有數(shù)據(jù)的情況下
[root@gitlab ~]# gitlab-ctl stop //有的需要使用 sudo gitlab-ctl stop
[root@gitlab ~]# gitlab-ctl reconfigure //使修改生效
2.有數(shù)據(jù)的情況下
如果 /var/opt/gitlab/git-data 目錄已經(jīng)存在Git倉(cāng)庫(kù)數(shù)據(jù)系枪, 你可以用下面的命令把數(shù)據(jù)遷移到新的位置:
# 準(zhǔn)備遷移之前要停止GitLab服務(wù)雀哨,防止用戶(hù)寫(xiě)入數(shù)據(jù)。
[root@gitlab ~]# gitlab-ctl stop
# 注意 'repositories'后面不帶斜杠私爷,而
# '/home/gitlab-data'后面是有斜杠的雾棺。
[root@gitlab ~]# rsync -av /var/opt/gitlab/git-data/repositories /home/data/gitlab/git-data
# 如果需要修復(fù)權(quán)限設(shè)置,
# 可運(yùn)行下面的命令進(jìn)行修復(fù)衬浑。
[root@gitlab ~]# gitlab-ctl reconfigure
# 再次檢查下 /home/gitlab-data 的目錄. 正常情況應(yīng)該有下面這個(gè)子目錄:
# repositories
[root@gitlab git-data]# ls /home/data/gitlab/git-data
repositories
# 將 剛剛遷移的包 @hashed 放入到repositories 下
[root@gitlab git-data]#mv @hashed repositories
# 完工! 啟動(dòng)GitLab捌浩,驗(yàn)證下是否能
# 通過(guò)web訪問(wèn)Git倉(cāng)庫(kù)。
[root@gitlab ~]# gitlab-ctl start
設(shè)置存儲(chǔ)倉(cāng)庫(kù)數(shù)據(jù)的備用目錄
注意的是:自GitLab 8.10開(kāi)始,可以通過(guò)在/etc/gitlab/gitlab.rb文件中添加下面的幾行配置工秩, 來(lái)增加多個(gè) git 數(shù)據(jù)存儲(chǔ)目錄尸饺。
git_data_dirs({
"default" => { "path" => "/var/opt/gitlab/git-data" }, //默認(rèn)存儲(chǔ)目錄
"alternative" => { "path" => " /home/gitlab-data" } //備用存儲(chǔ)目錄
})