用命令:tar -zxvf,解压tar.gz包失败的问题解决。

问题描述:

主机上,使用tar -zxvf 解压tar.gz包的时候,出现以下错误:

gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now

问题办法:

开门见山,先给出解决我这问题的办法。我的错误原因很简单:就是要解压的tar.gz包格式有错误。

用file FILE_NAME 命令,发现是data。

正确的格式应该是:gzip compressed data。

可能在上传过程中出现了网络问题(具体撒问题,待查),导致tar.gz包不是一个正确的tar.gz,所以重新上传一个tar.gz,再用命令解压就可以了。

下面记录解决的过程

tar.gz 包是我的工程包,里面有共工程的基础jar包,还有依赖的jar包。

tar.gz包是本地打包后,用filezillaClient客户端传到,远程主机的本地,然后用scp命令,复制到远程主机的另一个用户下。

主机用tar -zxvf 解压tar.gz包的时候,解压报错,网上百度说:

用命令:tar -zxvf,解压tar.gz包失败的问题解决。_第1张图片

然后咱就尝试下:

用命令:tar -zxvf,解压tar.gz包失败的问题解决。_第2张图片

结果依然不行。。。。。。

这是在思考是主机问题,还是tar包问题。

首先排除主机问题:

 在主机上解压另一个tar.gz包,看是否成功。

用命令:tar -zxvf,解压tar.gz包失败的问题解决。_第3张图片

成功,则说明主机没有问题。

那么此时问题就可能是自己的tar包问题。用file FILE_NAME命令,在自己本地一下, 是:gzip compressed data

在这台主机上file下jdk的tar.gz,发现也是gzip compressed data。

 

然后file下自己工程的tar.gz,发下是data。

然后就上传了一个新的工程tar.gz。

再执行tar -zxvf XXX.tar.gz,成功。

原因分析:

我是用scp命令从远程主机的本地复制到远程主机用户下,应该是上传过程中,出现了问题,导致tar.gz类型有误。

 

你可能感兴趣的:(工具总结)