温馨提示×

怎样备份linux overlay

小樊
47
2026-09-06 15:21:56
栏目: 智能运维

在 Linux 中,“overlay” 通常有两种常见含义,备份方式也不同:


一、备份 OverlayFS(overlay 文件系统)

OverlayFS 常用于容器(Docker)、Live CD、嵌入式系统等,结构是:

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

✅ 推荐备份方式

1. 直接备份 upperdir(最常用)

如果你只关心“改动部分”:

tar czvf overlay_upper.tar.gz -C /path/to/upperdir .

恢复:

tar xzvf overlay_upper.tar.gz -C /path/to/upperdir

✅ 优点:体积小
❌ 不包含 lowerdir 内容


2. 备份 merged 挂载点(完整视图)

如果你要完整备份“看到的内容”:

tar czvf overlay_merged.tar.gz -C /mnt/overlay .

恢复:

tar xzvf overlay_merged.tar.gz -C /mnt/overlay

⚠ 注意:不要在 merged 内同时写数据,避免不一致


3. 使用 rsync 增量备份

rsync -aHAX --delete /path/to/upperdir/ /backup/overlay_upper/

二、备份 Docker 的 overlay2 存储

Docker 默认使用 overlay2 存储驱动。

✅ 正确做法(推荐)

1. 使用 Docker 官方方式

docker commit <container> backup_image
docker save backup_image > backup.tar

恢复:

docker load < backup.tar

2. 停止容器后备份目录(不推荐但可用)

systemctl stop docker
tar czvf docker_overlay2.tar.gz /var/lib/docker/overlay2
systemctl start docker

⚠ 必须停止 Docker,否则数据可能损坏


三、备份 iptables / nftables 的 overlay(网络)

如果你说的是网络 overlay(如 VXLAN):

# iptables
iptables-save > iptables.rules

# nftables
nft list ruleset > nft.rules

四、最佳实践建议

✅ 备份前停止写入
✅ 优先备份 upperdir 或 merged
✅ 容器环境优先用 docker commit/save
✅ 定期校验备份完整性


如果你能补充说明:

  • 容器 overlay2
  • 还是 系统 overlayfs
  • 还是 网络 overlay

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

0