Linux:zip大于4Gb


11

当我尝试在Linux上压缩大文件时遇到错误,因为它太大而无法处理zip。有人知道我可以使用哪些命令来解决此问题吗?

这是我得到的错误:

zip error: Entry too big to split, read, or write (file exceeds Zip's 4GB uncompressed size limit)

它是一个简单的文本文件,实际上是日志文件。


3
请改用tar + gzip。
moonshadow 2011年

1
只需将文件拆分为1GiB块并将其压缩。或使用现代的压缩算法,您无需使用存档格式。

Answers:


7

使用linux split命令将日志文件分割为较小的文件。

并考虑设置日志轮播,以免再次发生这种情况。


2
只需添加此内容即可支持其他用户(如果他们对此进行搜索)。我使用此命令将文件拆分为1Gb的片段:split -b 1024m access_log2 access_log_
Matt Rogers

15

基本的Zip格式每个文件限制为4 GB。您需要将zip工具升级到支持Zip64的工具:

$ zip -v
版权所有(c)1990-2008 Info-ZIP-键入“ zip“ -L”'作为软件许可证。
这是Info-ZIP的Zip 3.0(2008年7月5日)。
...

邮编的特殊编译选项:
        ...
        ZIP64_SUPPORT(使用Zip64将大文件存储在档案中)

或者,使用其他存档格式,例如7z或tar

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.