如何使用overlay * as-is *复制带有overlayfs目录结构的/ var / lib / docker,而不增加存储空间

时间:2016-09-23 20:55:17

标签: docker kernel rsync coreos overlays

我在/var/lib/docker中安装了几个图像和大约150Gig数据的docker。此设置使用overlayfs作为其存储驱动程序。保存实际数据的/var/lib/docker/overlay下的每个层都有几个目录。分区大小为160G。

我的要求是将docker目录从/var/lib/docker复制到1TB的新磁盘,以便我指向docker从这个新分区开始并继续使用我的旧图像。

现在问题是,当我使用rsynccp命令-a时,将/var/lib/docker复制到新分区,而不是总共150G实际数据,复制的数据总量高达600G(并且计数......)。

Docker也被停止,但不确定操作系统如何查看160G数据并复制到600G +。我希望它不是overlayfs(合并目录)。 df -aTh上没有重叠信息。它也没有帮助用rmmod overlay

卸载内核overlayfs驱动程序

我怎么可能按原样复制这些数据,而不进行任何扩展/合并。

1 个答案:

答案 0 :(得分:8)

事实证明,docker正在hardlinks下的这些目录中使用/var/lib/docker/overlay。使用-H进行rsync(将硬链接复制为硬链接)解决了这个问题。

rsync -avPHSX /var/lib/docker /new/partition/