我在/var/lib/docker
中安装了几个图像和大约150Gig数据的docker。此设置使用overlayfs
作为其存储驱动程序。保存实际数据的/var/lib/docker/overlay
下的每个层都有几个目录。分区大小为160G。
我的要求是将docker目录从/var/lib/docker
复制到1TB的新磁盘,以便我指向docker从这个新分区开始并继续使用我的旧图像。
现在问题是,当我使用rsync
或cp
命令-a
时,将/var/lib/docker
复制到新分区,而不是总共150G实际数据,复制的数据总量高达600G(并且计数......)。
Docker也被停止,但不确定操作系统如何查看160G数据并复制到600G +。我希望它不是overlayfs(合并目录)。 df -aTh
上没有重叠信息。它也没有帮助用rmmod overlay
我怎么可能按原样复制这些数据,而不进行任何扩展/合并。
答案 0 :(得分:8)
事实证明,docker正在hardlinks
下的这些目录中使用/var/lib/docker/overlay
。使用-H
进行rsync(将硬链接复制为硬链接)解决了这个问题。
rsync -avPHSX /var/lib/docker /new/partition/