Unix使用的随机存取存档

时间:2010-05-29 02:56:55

标签: linux file archive

我正在寻找一种良好的格式来存档旧Linux计算机的整个文件系统。

TAR.GZ
tar.gz格式非常适合归档具有UNIX样式属性的文件,但由于压缩应用于整个归档,因此设计会排除随机访问。相反,如果要在归档结束时访问文件,则必须从头开始并将整个文件(可能是几百GB)解压缩到找到要查找的条目的位置

ZIP
相反,ZIP格式的一个卖点是它存储了存档的索引:文件名分别存储,指向存档内的位置的指针是查找数据。如果我想在最后提取文件,我会按名称查找该文件的位置,搜索该位置并提取数据。但是,它不存储文件属性,如所有权,权限,符号链接等。

其他选项?
我已尝试使用squashfs,但它并非真正用于此目的。版本之间的文件格式不一致,构建存档需要大量的时间和空间。

还有哪些其他选择可能更适合此目的?

2 个答案:

答案 0 :(得分:1)

zip(您可以使用http://www.info-zip.org/)存储文件属性 - 请参阅Wiki

  

每个条目都由本地引入   标题包含有关该文件的信息   例如评论,文件大小和   文件名,后跟可选   “额外”数据字段,然后是   可能是压缩的   加密的文件数据。 “额外”数据   字段是关键   ZIP格式的可扩展性。   “额外”字段被利用   支持ZIP64格式,   WinZip兼容的AES加密文件   属性和更高分辨率的NTFS   或Unix文件时间戳。其他   扩展可以通过   “额外”字段。 ZIP工具是必需的   按规范忽略Extra   他们不认识的领域。

答案 1 :(得分:1)

您可以查看duplicty。它允许您进行压缩和加密备份,并允许随机访问文件。在这里,您可以找到有关这些项目的更多信息:http://duplicity.nongnu.org/new_format.html

如果您想使用它,您还可以查看脚本duply。是duplicty的shell前端。更多信息:http://sourceforge.net/projects/ftplicity/