我执行了相同的脚本,该脚本将在 Windows7 上运行的 Ubuntu 虚拟机以及仅安装了 Ubuntu 的另一台计算机上生成 .tgz 文件。
我比较了我的linux计算机和VM生成的tgz文件,生成的文件在VM上大约大1MB。
但是,当我解压该文件时,tgz 中的所有文件在两个系统上的大小完全相同。
我在下面添加了我能想到的所有信息,这些信息可以帮助任何人弄清楚为什么 .tgz 在两个系统上大小不同。
有关虚拟机的信息:
Ubuntu 14.04.5 LTS 32 位
版本12.4
代号精确
tar版本:1.27.1
有关Linux计算机的信息:
Ubuntu 14.04.1 LTS 64 位
版本14.4
代号可信赖
tar版本:1.27.1
两台计算机之间唯一的区别是安装的操作系统,它们是相同的型号,具有相同的配置。
谢谢。
最佳答案
操作系统、库和/或 tar/gz 可执行文件的不同版本,或者正如 @ThomasDickey 提到的 - 创建存档的上下文都可能导致存档文件的实际内容不同。
如果您想确定文件内容是否相同,只需将其中一个与另一个并排复制并比较它们即可。
即使文件内容完全相同,由于文件系统类型、版本、格式选项(甚至可能是碎片?)等的差异,实际文件大小也可能有所不同。
如果您有并排副本,它们应该具有相同的大小(除非涉及碎片)。
关于linux - 为什么 Ubuntu 和 VM 上的 tar 文件大小不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31323666/