因此在这种情况下:
我创建了 tar.gz 文件,其中包含非常重要的文件。
在我关闭计算机之前,电就断了。
tar 文件中写入的文件是否安全且不会被损坏?
只检查 tar 文件的完整性而不检查单个文件可以吗?
我如何检查 tar.gz 文件的完整性?
答案1
是的,这绝对是可能的。
由于硬盘与计算机的其他部分相比速度极慢,因此在软件被告知文件写入已完成和文件实际写入硬盘之间几乎总是存在延迟。这可以防止磁盘速度慢导致计算机难以继续使用。但在写入完成之前,数据可能仅存在于计算机的 RAM 中。
有机制应用程序可以使用它来确保数据已写入磁盘,但使用它们会带来很大的性能成本,因此像这样的低级应用程序tar
不会使用它们,而是依靠更高级别的工具来确保数据完整性。
由于tar
不会为您执行此操作,因此您可以使用以下命令确保所有待处理的写入都已刷新到磁盘sync
命令。一旦该命令返回,您就可以确保运行之前发生的任何磁盘写入sync
都已成功写入硬盘。
此外,如果您彻底关闭系统,最后发生的事情之一是所有待处理的写入都会同步。因此,在断电的情况下,数据可能尚未写入磁盘,但在彻底关闭的情况下,一切都应该会写入磁盘。
答案2
要检查 tar.gz 文件的完整性:检查 tar.gz。我猜想如果 tar.gz 文件没问题,那么其中的文件也一定没问题。