哪种文件系统最适合备份?我对稳定性(尤其是在硬重启期间文件的不可破坏性等)感兴趣,但它如何有效地处理大型(> 5GB)文件也很重要。
另外,我应该使用哪些安装参数?
内核是Linux> = 2.6.34。
编辑:我不想要备份方法。我需要文件系统来存储它们。
哪种文件系统最适合备份?我对稳定性(尤其是在硬重启期间文件的不可破坏性等)感兴趣,但它如何有效地处理大型(> 5GB)文件也很重要。
另外,我应该使用哪些安装参数?
内核是Linux> = 2.6.34。
编辑:我不想要备份方法。我需要文件系统来存储它们。
Answers:
您可以使用ext4,但我建议使用journal_data
模式挂载,该模式将关闭dealloc(延迟分配),这会引起一些较早的问题。禁用dealloc将使新数据的写入速度变慢,但是在电源故障的情况下进行写入的可能性较小。我还应该提到,您可以不使用而禁用deallocjournal_data
它具有其他一些好处(或者至少在ext3中有好处),例如读取略有改善,并且我相信恢复会更好。
范围仍然会有助于碎片化。范围使大型文件的删除比ext3快得多,在ext4上删除任何大小的数据(单个文件)应该几乎是瞬时的,但在ext3上可能要花很长时间。(基于任何程度的FS都有此优势)
ext4也fsck
比ext3快。
最后一点,在ext4中有错误修正,直到2.6.31?我基本上会确保您没有运行2.6.32之前的LTS内核。
XFS坚如磐石,已经存在了很多年。检查xfs_freeze之类的工具,看看是否正是您所需要的。我知道这是非常主观的,但是多年来我一直使用XFS进行数据存储,而没有发生任何意外。
只需使用支持校验和的备份工具即可。例如Dar做到了,它支持增量备份。然后,您可以备份到坚如磐石的文件系统,例如ext3。
对于备份,您需要坚如磐石/非常稳定的东西。而btrfs或ZFS今天根本还没有准备好。
btrfs具有对写入磁盘的数据进行透明的校验和,并且始终保持快速的有序写入模式(以及许多其他对备份友好的功能),这使其很适合进行备份。有关更多详细信息,请参见https://btrfs.wiki.kernel.org/index.php/Main_Page。
我在其他答案中没有看到的一个非常重要的方面是文件系统的磁盘布局的稳定性(例如,考虑咨询可能的候选文档ext4,btrfs)。
虽然代码库和代码库文件系统驱动程序的测试数量确实很重要,正如其他答案所表明的那样,但由于它是在读写过程中对数据的保护,因此磁盘上的布局/格式是针对数据风险的保护措施处于静止状态,这是硬件缺陷的形式,例如无法读取的扇区或静默位腐烂。
关于ext4
,据称具有良好特性的是经过长期测试的代码库(https://events.static.linuxfound.org/sites/events/files/slides/AFL%20filesystem%20fuzzing%2C%20Vault%202016_0。 pdf显示在其中发现错误所花的时间比在更现代和更复杂的方法中花费的时间更长btrfs
),我已经研究了ext4持久性发现了其他被称赞的文件系统的缺陷。
我认为使用开发人员提供的工具来提高可恢复性(尽管“强化”)是谨慎的(如果选择ext4
为“ 坚如磐石的备份fs ”)e2image
ext4
e2image程序会将设备上的关键ext2,ext3或ext4文件系统元数据保存到image-file指定的文件中。通过对那些程序使用-i选项,可以由dumpe2fs和debugfs检查映像文件。这可以帮助专家恢复灾难性损坏的文件系统。将来,e2fsck将得到增强,使其能够使用映像文件来帮助恢复严重损坏的文件系统。
并推荐。
为系统上的所有文件系统创建映像文件并定期在启动时和/或每周或所以。映像文件应存储在其数据所在的文件系统以外的其他文件系统上,以确保在文件系统受到严重损坏的情况下可以访问此数据。
考虑到甚至ext4
磁盘布局上的所有元数据都没有提供冗余(即,超级块作为副本多次存储,仅将indo存储在精确的1个位置),因此ext4
肯定btrfs
会至少提供以下内容的校验和:所有元数据+ 文件内容数据。
为了抵消这种“缺点” ext4
并使它在磁盘布局rock-solid
方面变得更多,可以合理地通过/ parchive补充这种冗余和文件内容的恢复。par2
尽管该问题要求将重点放在文件系统解决方案上,但我想提请注意,文件系统提供的大多数功能(缓存,日志,回收分配的空间,分配的块等)不一定会使备份数据受益仅在批量阅读和阅读时才需要阅读大量内容。为此,我将考虑使用parchive
补充tar
备份作为更理想的备份解决方案,因为该过程中使用的代码库减少了,因此,如果“功能”较少,错误也将减少。