我们在一台jenkins机器上/tmp目录磁盘空间不够了,而/tmp挂载到/目录。最后一查根目录。定位到是/var/lib/docker目录太大。于是有了迁移这个目录的需求。
du -sh /tmp/* | sort -h
干货
1.首先,备份fstab文件 sudo cp /etc/fstab /etc/fstab.$(date +%Y-%m-%d)
2.停止docker
service docker stop
3.使用rsync工具同步,
mkdir -p /data/docker && cd /data/docker
yum -y install rsync
rsync -aXS /var/lib/docker/. /data/docker/
-a, --archive archive mode; equals -rlptgoD (no -H,-A,-X)
-X, --xattrs preserve extended attributes
-S, --sparse handle sparse files efficiently
4.修改fstab 在该文件中把下面一行添加到fstab里,将新位置挂载到 /var/lib/docker
新增的内容如下:
/data/docker /var/lib/docker none bind 0 0
5.重新挂载 && 查看结果
mount –a
df -h
6.重启docker
整合到一个root执行的脚本:
#!/bin/bash
cp /etc/fstab /etc/fstab.$(date +%Y-%m-%d)
service docker stop
export DOCKER_PATH=/data/docker/
rsync -aXS /var/lib/docker/. $DOCKER_PATH
echo $DOCKER_PATH /var/lib/docker none bind 0 0 >> /et/fstab
mount -a
df -h
service docker start
本文分享了在Jenkins服务器上因/var/lib/docker目录过大导致磁盘空间不足的问题,以及如何安全迁移此目录的详细步骤。包括备份fstab,停止Docker服务,使用rsync同步数据,修改fstab配置,重新挂载并重启Docker服务。
2429

被折叠的 条评论
为什么被折叠?



