Answers:
这取决于。最受欢迎的两个选项是tarball和zip文件,但它们都缺少:
.tar
对于大多数Linux用户而言,磁带存档是一个非常受欢迎的选择。它保留UNIX文件权限(这对于备份很重要)和硬链接。我测试过的每个Linux发行版以及一些Windows程序(例如7-zip)都支持开箱即用。但是,正如Duplicity开发人员所解释的那样,tar对于备份用例具有一些局限性和缺点。这可能非常慢:即使要获取存储在档案中的文件名列表,也必须读取整个档案。它还不处理某些较新文件系统具有的详细元数据。.zip
zip文件既可作为存档格式又可作为压缩格式。为了提高速度,您可以完全禁用压缩。Zip文件比磁带存档更好,因为它们存储一种目录表,使程序可以快速跳转到需要提取的特定文件。它还存储每个文件内容的校验和,以方便检测文件损坏。Zip文件非常受欢迎,不幸的是,它们不存储简单的文件权限,因此不适合Linux备份。遗憾的是,这里还缺少两个选项:
.7z
7z压缩的存档具有一些出色的功能,例如加密和支持非常大的文件。不幸的是,它不存储UNIX文件权限,因此不适合Linux备份。.ar
传统的UNIX归档文件是tar归档文件的前身,并且具有与tar归档文件相同的局限性。我认为,没有用于Linux备份的完全健壮的备份存档格式,没有一种众所周知的方式可以保证我的信任。
克服每种格式局限性的一种方法是将它们组合在一起:例如,将每个文件分别存档在tar存档中,然后将所有这些tarball存档在一个zip文件中。
如果您想要一个真正强大的备份,则可能应该考虑以下解决方案:
直接备份到外部硬盘,源和目标上使用相同的文件系统。这样可以确保您将按预期存储每个文件的权限和元数据。(顺便说一句,文件的所有者和组所有者使用其用户标识和组标识号(而不是名称)存储。)
使用全盘映像和克隆软件,例如CloneZilla。您无法从这些备份之一中检索一个文件,但可以绝对确定已保存了所有可能的文件。
记住,永远记住:只有尝试恢复备份时,才能对备份充满信心。如果最坏的情况发生了,并且源硬盘驱动器已被完全销毁,是否可以将还原到新硬盘的所有内容还原?它会按预期工作吗?尝试将备份还原到新硬盘,然后尝试从该硬盘运行几天。如果您发现缺少任何内容,则说明您的备份不够彻底。
还考虑一下要保留备份的位置。您至少需要一些与源磁盘不在同一建筑物中的备份,以保护自己免遭盗窃或火灾。对此的一些选择是云或朋友的房子。
使用tarball(.tar
文件)将是一种方法。使用gzip
压缩格式可以减少压缩,但可以提高速度。bzip2
速度慢得多,但压缩率更高。对于二进制数据,没有太大的区别。
使用gzip压缩来压缩目录的命令:
tar czf /path/to/save/backup.tar.gz directory-to-backup
要提取gzip压缩的tarball,同时保留文件权限,请执行以下操作:
tar xzpf /path/to/save/backup.tar.gz
更换z
用j
的压缩bzip2的添加v
V(例如之前czvf
和xzpvf
他们是存档/提取)来打印文件名。
bzip2recover
。