“CentOS 上 overlay 配置不了”这个问题比较常见,但原因很多,我先按最常见的几种场景给你梳理一下,你对照看看是哪一种,基本就能定位。
在 CentOS 里,“overlay”常见有 3 种:
下面分别说。
overlay2 需要:
检查:
uname -r
如果太低:
yum update -y
reboot
overlay2 不支持:
d_type)检查 xfs:
xfs_info / | grep ftype
必须是:
ftype=1
不是的话,只能重做文件系统。
正确示例(/etc/docker/daemon.json):
{
"storage-driver": "overlay2"
}
改完:
systemctl restart docker
查看:
docker info | grep Storage
mount -t overlay overlay -o lowerdir=...,upperdir=...,workdir=... /mnt
失败原因:
❌ 错误:
upperdir=/a
workdir=/b
✅ 正确:
upperdir=/ov/upper
workdir=/ov/work
mkdir -p lower upper work merged
临时测试:
setenforce 0
永久:
vi /etc/selinux/config
SELINUX=permissive
lsmod | grep overlay
没有就:
modprobe overlay
systemctl stop firewalld
systemctl disable firewalld
请你回答这几个,我可以直接帮你定位:
cat /etc/redhat-release)如果你愿意,把报错原样贴出来,我可以直接告诉你哪一行错了。