使用tar解压文件提示gzip: stdin: not in gzip format错误

使用tar解压文件提示gzip: stdin: not in gzip format错误

1. 问题描述

使用docker save xxxx > xxx.tar导出镜像,由于文件太大,需要split -b 3000m xxx.tar来分割文件,刻录到光盘然后导入到服务器上。

后面使用cat * | tar -xzv来解压压缩的镜像,随后使用docker load导入镜像。

开始的几次都没有问题,不过昨天同样的过程,提示gzip: stdin: not in gzip format

2. 问题原因

网上搜了一下,找到了这个网页,意思是这个文件不是gzip格式的,使用tar -xvf来解压就好了。于是尝试了一下,倒是执行成功了,但是解压出来一堆的文件夹,而不是一个镜像文件。

于是求教于同事,把上面整个过程重复了一下,然后发现了问题所在。开始几次没有问题,是因为我多了一个tar的过程。我把几个镜像放入了一个文件夹里,然后压缩了文件夹;最后一次失败了,是因为我使用docker save之后直接split了,没有tar的这个过程。所以解压的是一个image文件,才会解压出一堆的文件夹。

3. 解决方式

知道了原因,想解决办法就好。image文件被split,后面只需要合并就好了,合并后即可load镜像。命令如下:

cat xx* > image.tar

转载于:https://www.cnblogs.com/wswang/p/10172577.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值