在 CentOS 上配置 Overlay(通常是 overlayfs,用于容器、目录合并等场景),如果是快速上手,下面按常见用途给你最简洁做法。
lsmod | grep overlay
# 或
modprobe overlay
没有报错就说明支持。
mkdir -p /mnt/overlay/{lower,upper,work,merged}
lower:只读层(基础文件)upper:可写层(修改写入这里)work:overlay 必须的工作目录(不能和上面共用)merged:最终看到的目录echo "lower file" > /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
✅ 修改只会影响 upper,lower 不变。
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
CentOS 上 Docker 默认就用 overlay2:
docker info | grep Storage
如果不是 overlay2:
cat > /etc/docker/daemon.json <<EOF
{
"storage-driver": "overlay2"
}
EOF
systemctl restart docker
workdir 必须为空目录upperdir 和 lowerdir 不能在同文件系统冲突如果你说的是 Kubernetes / Podman / 特定业务场景的 overlay,告诉我具体用途,我给你更精准的配置。