下面给你一份CentOS 下使用 Overlay(OverlayFS)的常见配置说明,涵盖手动挂载、Docker 使用、系统启动自动挂载等几种典型场景。
OverlayFS 是一种联合文件系统(Union File System),常用于:
基本结构:
upperdir 可写层
lowerdir 只读层(可多个)
workdir 临时工作目录
merged 最终挂载点
CentOS 7/8 一般已支持:
lsmod | grep overlay
如果没有加载:
modprobe overlay
确认:
cat /proc/filesystems | grep overlay
mkdir -p /mnt/overlay/{lower,upper,work,merged}
echo "lower" > /mnt/overlay/lower/test.txt
mount -t overlay overlay \
-o lowerdir=/mnt/overlay/lower,upperdir=/mnt/overlay/upper,workdir=/mnt/overlay/work \
/mnt/overlay/merged
cat /mnt/overlay/merged/test.txt
echo "new" > /mnt/overlay/merged/new.txt
编辑:
vim /etc/fstab
添加:
overlay /mnt/overlay/merged overlay defaults,lowerdir=/mnt/overlay/lower,upperdir=/mnt/overlay/upper,workdir=/mnt/overlay/work 0 0
测试:
mount -a
docker info | grep -i storage
编辑:
vim /etc/docker/daemon.json
{
"storage-driver": "overlay2"
}
重启:
systemctl restart docker
✅ overlay2 性能比 overlay 好,CentOS 7/8 推荐使用
workdir and upperdir not on same filesystem
✅ workdir 和 upperdir 必须同分区
lowerdir=/a:/b:/c
✅ 用冒号分隔,优先级从左到右
临时关闭测试:
setenforce 0
或添加:
-o context="system_u:object_r:usr_t:s0"
| 场景 | 是否适合 |
|---|---|
| Docker 容器 | ✅ |
| 系统只读根目录 | ✅ |
| 临时测试环境 | ✅ |
| 生产数据目录 | ❌ |
如果你能说明具体用途(如 Docker、LiveOS、系统根目录、升级回滚),我可以给你更精确的配置方案。