如何备份/索引文件元数据

如何备份/索引文件元数据

我主张在面临数据丢失之前实施可靠的备份概念。拥有现场和异地备份是这种概念的支柱之一。然而我了解到元数据有时与实际文件内容一样有价值。

例如,我有一个数据备份和一个恢复的 btrfs 文件系统,需要决定是恢复备份还是保留恢复的数据。由于我缺少文件的校验和,我决定从异地备份恢复。

恢复后,我了解到,文件创建日期、所有权和权限也需要跟踪。幸运的是,我的数据是结构化的,我可以为每个脚本设置默认值。

但是为了改进我的备份计划,我想存储我的文件的元数据。

第一个动作是sha256sum获取stat数据并将其保存到磁盘。

如何更简单、更高效地索引和存储 Linux 上文件的元数据?

我研究过看起来很有希望的 git-annex,并且我看到人们使用 updatedb 来跟踪文件(还有 metdadata?)但也许有人有更好的选择?

答案1

对于关键服务器,请使用备份整个机器的解决方案,而不仅仅是复制文件。这样元数据和所有相关配置都会被保存。

如果是虚拟机,某些软件只会复制整个虚拟机管理程序数据文件。

答案2

大多数备份系统可以保留元数据。

tar 档案包含权限和时间戳元数据,但包含您想要的 sha256 校验和。

整个块设备的映像包含原始文件元数据。然而,这可能存在操作挑战。例如,部分恢复可能很困难,迁移到其他文件系统类型需要额外的步骤。

或者以 Borg 为例,这是一个有据可查的例子。保留文件元数据包括时间戳和 UNIX 权限。可以检查存储库验证其一致性。

对于其中任何一个,您都可以额外计算并存储您喜欢的哈希值。


无论使用哪种备份软件,都要定义恢复点目标,然后测试恢复。恢复的对象不仅应具有正确的元数据,还应包含良好的数据。

答案3

您可以使用系统完整性工具(例如tripwireAIDE等)来存储文件的校验和和元数据。这些工具旨在检测文件元数据和内容的更改,因此它们会创建此信息的索引。

相关内容