在 CentOS 上,“overlay”通常指 OverlayFS(overlay 文件系统),常见于:
overlay2)下面按场景说明如何“备份 CentOS 上的 overlay”。
Docker 的 overlay 目录在:
/var/lib/docker/overlay2
⚠️ 不要直接 cp overlay2 目录,容易损坏元数据。
docker images
docker save -o myimages.tar image1 image2
docker export container_id > container.tar
systemctl stop docker
tar czf docker-backup.tar.gz /var/lib/docker
systemctl start docker
如果你手工挂载了 overlay:
mount -t overlay overlay \
-o lowerdir=/lower,upperdir=/upper,workdir=/work \
/merged
你只需要备份:
upperdir(可写层)lowerdir(只读层,通常静态)tar czf upper-backup.tar.gz /upper
tar czf lower-backup.tar.gz /lower
⚠️ 不要备份:
/work(临时目录)/merged(挂载点,会递归死循环)rsync -aAXv /upper/ /backup/upper/
rsync -aAXv /lower/ /backup/lower/
参数说明:
-A:保留 ACL-X:保留 SELinux-a:递归+权限CentOS 默认开启 SELinux:
getenforce
备份后恢复时需修复标签:
restorecon -Rv /upper
restorecon -Rv /lower
/var/lib/containers/storage/overlaysystemctl stop podman
tar czf podman-overlay.tar.gz /var/lib/containers
| 场景 | 备份内容 |
|---|---|
| Docker | 镜像/容器或 /var/lib/docker |
| 手工 overlay | upperdir + lowerdir |
| 运行中 | rsync,不备份 work/merged |
| SELinux | restorecon |
如果你能补充说明:
我可以给你精确的备份命令脚本。