尽管存在 CRC 错误,仍可解压 ZIP 文件

尽管存在 CRC 错误,仍可解压 ZIP 文件

我下载了一个多部分 ZIP 档案。它包含一个视频文件。

不幸的是,IZarc 在提取档案时报告 CRC 校验失败。再次下载档案是一项漫长的任务,因为我使用了免费数字储物柜和 JDownloader,所以我需要几个小时才能再次下载所有文件,我甚至不确定结果是否会更好。

所以我想问一下:假设档案由.zip.z01....z09部分组成,并且假设视频流中损坏的几个字节不一定会导致视频无法读取(它是 MP4),

如何提取多部分 ZIP 档案并禁用 CRC 校验或至少阻止 zip 实用程序删除未通过校验的文件?

答案1

赛格威的 zip 有命令行开关 -F 和 -FF。如果存档的某些部分缺失,可以使用它们。

使用zip -F broken_archive -F --out fixed_archive.zip创建一个新的 ZIP 文件,其中包含具有硬修复 CRC 的相同文件,然后以通常的方式从新档案中提取

答案2

尝试提取 zip 文件时,由于出现 Bad CRC 错误而导致此处发生。

从终端来看,无论您使用的是 Linux、*BSD、OSX 还是 Windows(据我所知),都没有区别。

正确的方法是维修出现 CRC 错误的 zip 的解决方法是尝试 -F 方法,如果失败则尝试 -FF 方法。即:

zip -F damaged.zip --out hope.zip
unzip -t hope.zip

如果仍然看到ZIP bad CRC,请尝试:

zip -FF damaged.zip --out morehope.zip
unzip -t morehope.zip

你仍将有很大机会看到ZIP bad CRC,但拥有希望总是好的。

此时实际上只有两个选择。

首先是删除损坏的文件。例如,fileBadCRC.jpgCRC 错误的文件在哪里:

zip -d damaged.zip fileBadCRC.jpg

或者用另一个副本替换它(假设您有一个副本可以替换该文件):

zip damaged.zip fileBadCRC.jpg

无论哪种方式,运行unzip damaged.zip现在都不会显示任何错误,但您丢失或替换了出现错误的原始文件。

答案3

如何绕过 CRC 错误并在 WinRAR 中提取 RAR 存档?您可以使用以下步骤绕过 CRC 错误并提取 RAR 文件:

打开 WinRAR 软件,单击“文件”菜单,选择“打开存档”选项接下来,浏览有问题的 RAR 存档并单击“打开”选项然后选择“提取到”选项使用 WinRAR 提取 RAR 文件

单击“杂项”部分中“保留损坏文件”旁边的复选框,然后在窗口右侧提供您要在 PC 上解压 RAR 文件的路径。单击“确定”开始提取,忽略 RAR 文件提取过程中出现的任何错误。当弹出 CRC 错误窗口时,将其关闭并继续提取过程。WinRAR 应用程序将允许您继续并提取存储在 RAR 存档中的文件。

相关内容