温馨提示×

CentOS怎样加Overlay

小樊
72
2026-07-20 21:09:18
栏目: 智能运维

CentOS 上添加 Overlay(overlayfs),常见场景有几种,下面按最常见用途给你说明。


一、确认内核是否支持 Overlay

CentOS 7 及以后版本 默认内核已支持 overlay

lsmod | grep overlay

如果没有输出,可以手动加载:

modprobe overlay

开机自动加载:

echo "overlay" > /etc/modules-load.d/overlay.conf

二、手动挂载 Overlay(最常用)

1️⃣ 准备目录

mkdir -p /mnt/overlay/{lower,upper,work,merged}

说明:

  • lower:只读层
  • upper:可写层
  • work:工作目录(必须为空)
  • merged:最终挂载点

2️⃣ 挂载 Overlay

mount -t overlay overlay \
-o lowerdir=/mnt/overlay/lower,upperdir=/mnt/overlay/upper,workdir=/mnt/overlay/work \
/mnt/overlay/merged

3️⃣ 验证

mount | grep overlay

三、写入 /etc/fstab(开机自动挂载)

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 使用 Overlay(常见场景)

1️⃣ 查看 Docker 存储驱动

docker info | grep -i storage

2️⃣ 修改 Docker 使用 overlay2(推荐)

vim /etc/docker/daemon.json
{
  "storage-driver": "overlay2"
}

重启 Docker:

systemctl restart docker

overlay2 是 CentOS 7/8 推荐方案


五、CentOS 8 / Stream 注意事项

  • 默认使用 XFS + overlay2
  • 若出现:
    overlay: upper fs does not support xattr
    
    需要 XFS 挂载时加:
    mount -o remount,user_xattr /
    

六、常见问题

❓ overlay 和 overlay2 区别?

类型 说明
overlay 旧版
overlay2 性能更好,Docker 推荐

❓ 是否支持多个 lowerdir?

✅ 支持:

lowerdir=/a:/b:/c

七、典型使用场景

  • Docker / Podman 存储
  • 只读根文件系统 + 可写层
  • LiveCD / 系统升级回滚
  • 容器化环境

如果你能说明 具体用途(Docker / 系统根目录 / 自定义目录 / 容器运行时),我可以给你更精确的配置方案。

0