我可以创建文件系统的映像,也可以创建包含所有文件系统的 tar 文件。因此,图像是否类似于 tar 存档?或者这两种类型是否有更多不同?
答案1
图像是文件系统的原始(字面意思,逐字节)副本。因为这包括所有 fs 元数据,所以您可以按照与安装具有完全相同的字节数据的物理设备相同的方式安装它。
tar 文件(又名“tarchive”)是一种存档格式,文件系统不可知-- 尽管它包含权限、所有权等信息并维护目录结构,但它并不进一步依赖于源文件系统。这意味着归档文件可以从一种类型的文件系统移植到另一种类型的文件系统;只要有tar
实用程序,无论来源如何,都应该能够使用 tar 文件。
存档是不是存储区域的字节副本的文字字节。它是一组由 tar 构建的文件,因此与图像不同,它的内容可以在外部进行分析和操作(由tar
实用程序本身)。这也意味着它确实依赖于某些现有的文件系统才能解压和使用。
存档可以包含内容整个文件系统,但这与包含实际文件系统不同,就像图像一样。为了重现原始文件系统,您必须创建一个相同类型的文件系统分区(注意,压缩包中没有任何指示)并解压到其中。相反,如果您想将映像“解压”到现有文件系统的子目录中,则必须挂载它并手动复制出来(尽管可能有工具可以帮助完成此操作)。
因此,这两种方法最适合略有不同的目的。对于备份,tar 是更好的选择,原因如下:
- 您只是复制实际文件,而不是空白空间。
- 您没有携带底层文件系统及其随之而来的缺陷(碎片、不一致)。
- 您可以避免包含不应该包含的内容(例如,
/proc
,/dev
)。 - Tar 文件更容易更新。