例如,我有一个文件系统映像,其中有一些压缩文件(使用弱压缩,如 gzip),例如手册页或附近具有相同未压缩内容的档案。
如何预先过滤数据以将压缩数据“扩展”为纯文本格式(以强压缩重新压缩),然后在解压缩后进行后过滤以恢复原始的“半压缩”图像?SHA-1 匹配是建议但不是严格要求的(但生成的图像必须有效,例如重新压缩的文件不应增长太多,可解压缩等)
比如通过逆转弱压缩算法来提高压缩率。
有这方面的程序吗?
答案1
假设你处在一个可以编写和运行 shell 脚本的环境中,这很容易做到:
开店时:
- 挂载文件系统映像。
- 查找所有带有“弱压缩”后缀的文件
- 解压缩这些文件
- 将未压缩的文件列表保存在某处
- 卸载图像
- 压缩图像
恢复:
- 解压图片
- 安装系统
- 使用先前保存的列表来压缩文件
这可以使用 Gentoo 的 lesspipe.sh 中的某些文件检测代码、find 和 gzip、bzipt2 等来完成。
如果您更喜欢使用“强压缩”来压缩单个文件而不是整个图像,那么这当然也是可行的。