在使用docker加载离线镜像文件时,出现了json no such file or directory的错误,刚开始以为是压缩包拷贝坏了,重新拷贝了以后还是出现了问题。经过网上查找方案,并且自己实践,采用下面的简单方法就可以搞定。
归结为一句话:先解压tar再压缩回tar。
先解压.tar文件
bash
tar -xvf xxx.tar
然后移除掉原来的tar文件,最后再把当前目录下零散的一系列文件压缩回来:
bash
tar -cvf xxx.tar *
上述方案能够很好的解决这个问题,但是确实不知道是什么原因导致的,大概率猜测是在不同电脑拷贝tar文件时使用了不同的压缩解压技术,导致压缩文件和解压文件不能完全一致,需要在目标机器上重新压缩。