温馨提示×

如何备份centos overlay

小樊
50
2026-10-09 02:42:02
栏目: 智能运维

在 CentOS 上,“overlay”通常指 OverlayFS(overlay 文件系统),常见于:

  • Docker 的存储驱动(overlay2)
  • 手工挂载的 overlay 挂载点
  • 容器/镜像层

下面按场景说明如何“备份 CentOS 上的 overlay”。


一、备份 Docker 的 overlay(最常见)

1️⃣ 推荐方式:备份 Docker 数据和镜像(不是直接拷 overlay)

Docker 的 overlay 目录在:

/var/lib/docker/overlay2

⚠️ 不要直接 cp overlay2 目录,容易损坏元数据。

正确做法

(1)导出镜像

docker images
docker save -o myimages.tar image1 image2

(2)备份容器

docker export container_id > container.tar

(3)停止 Docker 后整体备份(可选)

systemctl stop docker
tar czf docker-backup.tar.gz /var/lib/docker
systemctl start docker

二、备份正在运行的 overlay 挂载点

如果你手工挂载了 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 备份 overlay(推荐)

rsync -aAXv /upper/ /backup/upper/
rsync -aAXv /lower/ /backup/lower/

参数说明:

  • -A:保留 ACL
  • -X:保留 SELinux
  • -a:递归+权限

四、CentOS + SELinux 注意事项

CentOS 默认开启 SELinux:

getenforce

备份后恢复时需修复标签:

restorecon -Rv /upper
restorecon -Rv /lower

五、如果是 K8s / Podman 的 overlay

  • Podman:/var/lib/containers/storage/overlay
  • 方法同上(停止服务后打包)
systemctl stop podman
tar czf podman-overlay.tar.gz /var/lib/containers

六、总结(速查)

场景 备份内容
Docker 镜像/容器或 /var/lib/docker
手工 overlay upperdir + lowerdir
运行中 rsync,不备份 work/merged
SELinux restorecon

如果你能补充说明:

  • 是 Docker / Podman / 手工 overlay
  • CentOS 版本(7 / 8 / Stream)
  • 是否运行中

我可以给你精确的备份命令脚本。

0 踩