通常,同步应用程序会根据文件大小更改和修改日期检测文件修改。这是否适用于 Amazon EBS 快照流程?
最近我注意到一个固定大小的文件被排除在快照之外,即使该文件在一段时间内被多次修改。当最近的快照(实际上是在第一个快照之后创建的任何快照)加载到新实例时,文件中只能找到初始内容。甚至文件上的修改日期也设置为初始日期。
这让我想知道 Amazon EBS 快照如何确定修改的文件。我可以更改任何配置以确保将固定大小的文件正确添加到快照中吗?
通常,同步应用程序会根据文件大小更改和修改日期检测文件修改。这是否适用于 Amazon EBS 快照流程?
最近我注意到一个固定大小的文件被排除在快照之外,即使该文件在一段时间内被多次修改。当最近的快照(实际上是在第一个快照之后创建的任何快照)加载到新实例时,文件中只能找到初始内容。甚至文件上的修改日期也设置为初始日期。
这让我想知道 Amazon EBS 快照如何确定修改的文件。我可以更改任何配置以确保将固定大小的文件正确添加到快照中吗?
是的,但它是在块级别上这样做的。也就是说,它检测更改的低级块而不是文件。
EBS 确实使用块级差异来确定要存储的内容(正如@Dmitry 所说)。但是,EBS 还会保留所有先前存在的快照,这些快照是完全重新创建文件系统状态所需的,处于拍摄快照时的状态。
如果您的快照显示给定文件的旧状态,那么您肯定正在查看旧快照。
Amazon EBS 快照是增量备份,这意味着只会保存设备上自上次快照以来发生更改的块。如果您的设备具有 100 GB 的数据,但自上次快照以来仅更改了 5 GB 的数据,则只有 5 GB 的额外快照数据将存储回 Amazon S3。即使快照是以增量方式保存的,当您删除快照时,只会删除任何其他快照不需要的数据。因此,无论之前删除了哪些快照,所有活动快照都将包含恢复卷所需的所有信息。