提取下载的压缩 tar 时出现 CRC 错误。tar 文件完好无损

提取下载的压缩 tar 时出现 CRC 错误。tar 文件完好无损

我已经从下载了一个压缩文件http://ds.arm.com/downloads/。文件详细信息为 DS500-BN-00019-r5p0-21rel1.tgz(64 位)当我尝试使用以下命令提取此文件时

tar -zxvf DS500-BN-00019-r5p0-21rel1.tgz

我收到以下错误

gzip: stdin: invalid compressed data--crc error
tar: Child returned status 1
tar: Error is not recoverable: exiting now

如果我尝试使用“-tzf”选项查看内容,则会得到相同的输出。在不同的 ubuntu 环境中文件提取成功。tar 仅在我的 ubuntu 环境中提取失败。如果我使用 7z,我会观察到以下失败消息

7-Zip [64] 9.20  Copyright (c) 1999-2010 Igor Pavlov  2010-11-18
p7zip Version 9.20 (locale=en_IN,Utf16=on,HugeFiles=on,4 CPUs)
Processing archive: DS500-BN-00019-r5p0-21rel1.tgz
Extracting  DS500-BN-00019-r5p0-21rel1.tar     CRC Failed
Sub items Errors: 1

从互联网下载的所有压缩文件都会出现此行为。如果我使用来自不同 ubuntu 环境或我的系统本身的压缩文件,则不会观察到此行为。

我怀疑这只在我的 ubuntu 环境中出现。请帮助我解决这个问题。

以下是环境详细信息

Ubuntu 12.04
$ tar --version
tar (GNU tar) 1.26
...
$ gzip --version
gzip 1.4
...

如果需要更多详细信息,请告知我。

答案1

尝试

gunzip DS500-BN-00019-r5p0-21rel1.tgz

然后文件就变成DS500-BN-00019-r5p0-21rel1.tar

然后尝试

tar -xvf DS500-BN-00019-r5p0-21rel1.tar

如果这不起作用,文件可能已损坏。尝试使用以下命令查找文件类型

file DS500-BN-00019-r5p0-21rel1.tgz

检查输出是否显示gzip compressed data?如果没有,请再次下载文件后再试。

希望这可以帮助。

答案2

可能是您用来下载文件的任何程序都检测到它们已被压缩,并正在为您解压。浏览器会做这种(无用)的事情。file对文件运行命令,看看是否显示

gzip compressed data, last modified:...

这是正确的,或者只是类似

POSIX tar archive (GNU)

这意味着它已被解压缩,因此tar xf无需使用z

相关内容