温馨提示×

如何备份linux overlay

小樊
37
2026-09-18 15:10:45
栏目: 智能运维

在 Linux 中,“overlay”通常指 OverlayFS(overlay filesystem),也可能指 Docker 的 overlay 存储驱动 / overlay 网络。下面我分别说明常见场景下的“备份方法”。


一、备份 OverlayFS(文件系统层面)

OverlayFS 结构通常如下:

lowerdir  (只读层,多个)
upperdir  (可读写层)
workdir   (工作目录)
merged    (挂载后的统一视图)

✅ 推荐备份方式

1. 备份 upperdir(最重要)

tar czf upper.tar.gz -C /path/to/upper .

rsync -aHAX /path/to/upper/ /backup/upper/

upperdir 包含了所有“修改、新增、删除”的内容
lowerdir 一般不需备份(通常是系统或镜像本身)

2. 记录挂载参数

mount | grep overlay

cat /proc/mounts | grep overlay

示例:

overlay on /mnt merged
lowerdir=/lower,upperdir=/upper,workdir=/work

3.(可选)备份 merged 视图

rsync -aHAX /mnt/merged/ /backup/merged/

适合做“整机一致性备份”,但会包含 lower 内容。


二、Docker 使用 overlay2 存储驱动时

✅ 正确备份 Docker 数据

停止 Docker(推荐)

systemctl stop docker

备份数据目录

rsync -aHAX /var/lib/docker/ /backup/docker/

tar czf docker-backup.tar.gz -C /var/lib/docker .

只备份容器改动(轻量)

docker commit <container> backup-image
docker save backup-image > backup.tar

⚠️ 不建议直接 tar /var/lib/docker/overlay2 而不停 Docker


三、Docker overlay 网络(网络层面)

Overlay 网络本身无需备份,但可导出配置:

docker network inspect overlay_net > overlay.json

恢复:

docker network create \
  --driver overlay \
  --subnet 10.0.0.0/24 \
  my_overlay

四、常见错误 ❌

错误做法 原因
只备份 merged 无法区分 lower / upper
在线直接 tar overlay2 数据可能不一致
忽略 workdir 恢复可能失败

五、恢复示例(OverlayFS)

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

如果你能说明:

  • 系统 OverlayFS 还是 Docker overlay/overlay2
  • 是否运行中
  • 是否用于容器 / 根文件系统

我可以给你更精确的备份脚本

0