GitLab存储空间满了

1. 背景

前两天同事反馈,代码推送不到服务器了,GitLab报500错误,我等了一天都变好。登录服务器查看GitLab虚拟机,发现磁盘满了。于是用如下命令释放出了一部分空间:

bash 复制代码
journalctl --vacuum-time=1s

释放了1秒前的日志,誊出几百兆空间,GitLab果然能用了。

只誊出了几百兆的空间,用不了几天又会满的,怎么也得留出五六个G的空间才行。

2. 找空间

当初创建虚拟机时,分配了40G空间,可是GitLab提示"/dev/sda"只有20G,于是用命令行查看:

bash 复制代码
sudo fdisk -l

"/dev/sda1"几百兆的样子,"/dev/sda2"有20G。意思只有俩分区,一个sda1,有几百兆;另一个分区sda2,有20G。然后再也没有了,貌似可以添加分区。

用如下命令打开分区工具:

bash 复制代码
sudo fdisk /dev/sda

然后就进入磁盘工具了。

输入"n"回车新增分区,再根据提示输入"3",再根据提示操作(直接回车即可),就创建了分区"sda3",空间大小刚好20G。然后似乎有个格式化分区的操作,一边查资料一边操作,我也弄不清楚需要不需要这个操作了。

3. 挂载分区

用"sudo fdisk -l"查看,依然看不到sda3的新分区,是因为没挂载。

命令行创建挂载点:

bash 复制代码
sudo mkdir -p /mnt/gitlab

挂载分区:

bash 复制代码
sudo mount /dev/sda3 /mnt/gitlab

再用"sudo fdisk -l"查看,果然多出来一个分区"/dev/sda3",大小是20G。这就把丢失的20G空间找回来了。

4. 给GitLab分配新空间

停止GitLab服务:

bash 复制代码
sudo gitlab-ctl stop

用vi工具打开"/etc/gitlab/gitlab.rb",找到我设置的数据目录和备份目录,用"mv"命令,将GitLab的数据目录和备份目录移到新分区"/mnt/gitlab"。

gitlab.rb文件中,备份目录是我自己设置的,在"/var/opt/gitlab/backups",移动备份目录:

bash 复制代码
sudo mv /var/opt/gitlab/backups /mnt/gitlab/backup

gitlab.rb文件中,数据目录我没设备,就是默认目录,在"/var/opt/gitlab/git-data",移动备份目录:

bash 复制代码
sudo mv /var/opt/gitlab/git-data /mnt/gitlab/data

再用"sudo fdisk -l"查看,原主分区"sda2"剩余空间多了9个G,新分区"sda3"剩余空间成11G了,说明GitLab的数据的确移到新分区了。

5. 重启GitLab

修改GitLab的配置,即修改"/etc/gitlab/gitlab.rb",将备份目录改为"/mnt/gitlab/backup",将数据目录改为"/mnt/gitlab/data"。

保存配置,重新加载配置:

bash 复制代码
sudo gitlab-ctl reconfiguration

启动GitLab:

bash 复制代码
sudo gitlab-ctl start

登录GitLab,发现sda2的剩余空间多,也有了sda3的空间数据。

胜利!!!

相关推荐
Winston Wood2 小时前
一文了解git TAG
git·版本控制
喵喵先森2 小时前
Git 的基本概念和使用方式
git·源代码管理
xianwu5434 小时前
反向代理模块
linux·开发语言·网络·git
binishuaio6 小时前
Java 第11天 (git版本控制器基础用法)
java·开发语言·git
会发光的猪。7 小时前
如何在vscode中安装git详细新手教程
前端·ide·git·vscode
wowocpp7 小时前
ubuntu 22.04 硬件配置 查看 显卡
linux·运维·ubuntu
山河君7 小时前
ubuntu使用DeepSpeech进行语音识别(包含交叉编译)
linux·ubuntu·语音识别
knighthood20018 小时前
解决:ros进行gazebo仿真,rviz没有显示传感器数据
c++·ubuntu·ros
stewie68 小时前
在IDEA中使用Git
java·git
A ?Charis17 小时前
Gitlab-runner running on Kubernetes - hostAliases
容器·kubernetes·gitlab