使用tar解压的时候提示:gzip: stdin: not in gzip format

问题背景

  我是在CentOS上面使用wget命令下载JDK8的源码之后,使用tar命令解压下载的文件,结果出现这样的错误:

[root@VM_0_8_centos src]# wget https://download.oracle.com/otn-pub/java/jdk/8u201-b09/42970487e3af4f5aa5bca3f542482c60/jdk-8u201-linux-x64.tar.gz
 ............................
Saving to: ‘jdk-8u201-linux-x64.tar.gz’

[root@VM_0_8_centos src]# tar -zxf jdk-8u201-linux-x64.tar.gz
gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now

  网上查了一下资料,其中这篇博客中的https://blog.csdn.net/ghb5371548/article/details/5539543里面介绍了一种方式:

  就是将文件名后面的gz去掉,即:Xxx.tar.gz--->Xxx.tar,然后使用tar -xvf Xxx.tar进行解压。

  

  但是我按照他们的做法去尝试时,发现并不能解决问题:

[root@VM_0_8_centos src]# mv jdk-8u201-linux-x64.tar.gz jdk-8u201-linux-x64.tar
[root@VM_0_8_centos src]# tar -xvf jdk-8u201-linux-x64.tar
tar: This does not look like a tar archive
tar: Skipping to next header
tar: Exiting with failure status due to previous errors

  此时提示我这并不是一个tar包。

 

 

发现问题

  使用file命令查看一下文件的格式,这才让我茅塞顿开,原因在于,我下载的文件根本就是不是压缩包,而是被服务器当成spider,下载的文件其实是一个HTML:

[root@VM_0_8_centos src]# file jdk-8u201-linux-x64.tar
jdk-8u201-linux-x64.tar: HTML document, ASCII text, with very long lines, with CRLF line terminators

[root@VM_0_8_centos src]# head -5 jdk-8u201-linux-x64.tar
<html>
<head>
<title>Unauthorized Request</title>
<META NAME="ROBOTS" CONTENT="NOINDEX, NOFOLLOW">
<link rel="stylesheet" type="text/css" href="/errors/us/assets/hp-styles.css" />

  

 

解决问题

  既然是被当成spider了,可以设置一些header头部信息,比如user-agent,还不如利用浏览器下载之后,使用ftp上传到服务器上面。

  

 

转载于:https://www.cnblogs.com/-beyond/p/10496195.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值