用于归档的文件系统


10

我的文件系统中有一些复杂的只读数据。它包含svn信息库的某些修订的数千个快照,以及回归测试的输出。快照之间的相同文件已经使用硬链接删除了。这样,存储容量并不需要很大,但是它仍然消耗大量的inode,这对于我的主文件系统来说,使fsck痛苦地长了。

我想将这些数据移至另一个文件系统,以免对主文件系统造成太大影响。有什么建议吗?Squashfs似乎是一个可能的选择,但我必须检查它是否可以有效处理硬链接。


1
哪个操作系统?您是否愿意使用其他操作系统设置文件服务器?
凯文·坎图

Answers:


5

如果是fsck慢的Abot,您是否尝试过ext4?他们添加了一些功能,通过不查看未使用的inode来使fsck变得非常快:

Fsck是一个非常缓慢的操作,尤其是第一步:检查文件系统中的所有inode。在Ext4中,每个组的inode表的末尾将存储一个未使用的inode列表(为了安全起见,带有校验和),因此fsck将不会检查那些inode。结果是,总fsck时间从2倍缩短到20倍,具体取决于使用的inode数量(http://kerneltrap.org/Linux/Improving_fsck_Speeds_in_Ext4)。必须注意,它将建立未使用的inode列表的是fsck,而不是Ext4。这意味着您必须运行fsck才能构建未使用的inode的列表,并且只有下一次fsck运行会更快(无论如何,您都需要传递fsck才能将Ext3文件系统转换为Ext4)。fsck加速中还有一个功能-“灵活块组”


看起来很有希望。我会尝试的。
魏贤

我看到您现在使用Ext3。您可以轻松地将ext3转换为ext4(那里有大量的howtos,它基本上只是使用特殊参数安装ext3分区,然后永远是ext4)。
tante

7

Btrfs对快照具有本机支持,因此您不必使用硬链接进行重复数据删除。您可以通过创建btrfs文件系统并使用所需的最早修订版本加载它,并创建快照,然后将存储库向前修订到每个需要快照的时间点并在每个快照上进行快照,来重新创建当前设置。步。这应该比硬链接更有效,并且也更容易设置。

我也认为(尽管我不确定),squashfs透明地对文件进行重复数据删除,因此,即使它不处理硬链接,您仍然会看到好处。如果您永远不需要更改文件系统中的数据,那么squashfs可能是可行的方法,因为fsck可以用md5sum替换;)


6

我比较喜欢XFS,因为我对这个文件系统有很好的经验。但是我真的建议您对数据和建议的所有文件系统进行测试。


1
感谢您的建议。我现在正在使用ext3。在XFS上fsck是否比ext3快?
魏隐

1
是的,fsck更快。但是,正如tante所说的那样,您应该将其迁移到ext4。
ddeimeke 2010年

0

我知道有几家商店正是出于这个目的使用DataDomain

您的存档脚本可以非常简单(例如tar或rsync和cron),并且您不必担心管理硬链接或在大多数文件系统上无法硬链接的目录。除了节省带宽外,不需要增量副本。所有的魔力都发生在块层内部。托管价值15-20TB的虚拟数据而仅使用价值1-2TB的实际磁盘空间并不罕见。您仍然有大量磁盘备份可用。

数据将通过NFS或iSCSI提供,但是我不确定这是否是一个问题

当FreeBSD获得ZFS v23时,重复数据删除将对我们其他人可用。


重复数据删除的使用既耗费了内存(如果内存用完了,可能会产生不良的副作用,这可能比您想象的要多得多),但它仅在某些(可能是公司)用例中真正有用。不过,可以使用ZFS快照。
killermist 2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.