How to solve gzip: stdin: not in gzip format error

目录

一. 问题说明

二. 问题解决

三. 命令复习


一. 问题说明

当执行 

tar -xzf  /tmp/hadoop-3.3.5.tar.gz -C /home/taiyi/yarn

命令时出现:

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

二. 问题解决

为了知道文件的格式,我们可以执行如下命令:

[root@bi8v ~]# file /tmp/hadoop-3.3.5.tar.gz
/tmp/hadoop-3.3.5.tar.gz: POSIX tar archive

The file, yarn-3.3.5.tar.gz is in the POSIX tar archive (GNU) format instead of the gzip format. It means that the file has only been archived and not compressed using gzip. The name of a file has been changed by adding the “.gz” extension. Now as we know this file is only archived and not compressed, we can extract the file removing the “z” flag as this flag is used for gzipped files only.

yarn-3.3.5.tar.gz是POSIX tar归档文件(GNU)格式,而不是gzip格式。说明文件只是没归档而没有被压缩,只是修改了文件的拓展名.gz.

现在我们可以去掉"z"去解压这个只被归档的文件因为,这个标识只用于gzip文件。

tar -xvf  /tmp/hadoop-3.3.5.tar.gz -C /home/taiyi/yarn

问题解决!

三. 命令复习


压缩
tar czvf 压缩文件名.tar.gz 被压缩文件夹




解压
tar zvxf 压缩文件名.tar.gz -C 目标文件夹

-c  压缩
-x  解压
-z  支持gzip解压文件
-v  显示操作过程
-f  使用档名,请留意,在f之后要立即接档名!不要再加参数!

去除解压目录结构使用  --strip-components N

如: 压缩文件text.tar 中文件信息为 src/src1/src2/text.txt

运行 tar -zxvf text.tar --strip-components 1

结果:src1/src2/text.txt

如果运行 tar -zxvf text.tar --strip-components 3

解压结果为: text.txt

参考:

How to solve gzip: stdin: not in gzip format error

你可能感兴趣的:(linux,linux,服务器,运维)