BTRFS与ZFS相比如何?


21

我正在考虑在我拥有的某些新服务器上使用哪个OS和文件系统,并且正在考虑带ZFS的Free BSD或带BTRFS的Linux。

我在两个系统上都运行过这些程序,因此唯一的问题是文件系统的可靠性和性能等。


1
我不是* nix人,但我通常会看到ZFS与Solaris结合使用-在此查看此问题:serverfault.com/questions/60453/zfs-and-non-sun-oss(这可能会使您的选择更容易)
马克·亨德森

我个人选择的是zfs,仅仅是因为我认为它比BTRFS更成熟。当然,我不知道zfs在bsd上的表现如何。
egorgry 2010年

Answers:


16

截至2010年4月,Btrfs仍在开发中,尚未准备好用于生产(确实不是,我一直在尝试使用内核2.6.32)。明智的btrfs包含ZFS的某些功能,但不是全部。最值得注意的是,缺少RAID-Z和重复数据删除。

btrfs的工作原理是快照,写时复制,校验和并将多个磁盘用作单个卷。GNU cp最近有了一个简洁的“ reflink”功能,可以将文件复制为写时复制副本。

ZFS-FUSE似乎比btrfs更稳定,因此如果您选择使用Linux,则可以选择(http://zfs-fuse.net/)。已实现Solaris ZFS的大多数功能。但是,找不到最新的性能基准。

对于坚如磐石的解决方案,我仍然要说说Linux和XFS。如果需要快照,请添加LVM2。如果需要软件RAID,请添加mdadm。


Linux上的ZFS-FUSE有什么问题?我正在将其用于我的家庭NAS(2x500GB镜像设置以及具有cron作业的自动快照和清理功能),但我没有任何问题。
Wim Coenen

在阅读有关ZFS-FUSE的最新更新后,我必须承认,该项目似乎已成功恢复(开发已停滞了很长时间)。该功能集与Solaris上的ZFS相当,仅缺少一些可用性方面的壮举。我将相应地改写我的答案。
korkman

1
可以在没有FUSE的情况下使用ZFS,它已经作为本地文件系统存在。请参阅:zfsonlinux.org
Stone

“请记住,当前的0.5.2稳定发行版尚不支持可安装的文件系统。”
korkman


6

截至今天(2012年2月1日),btrfs仍然缺少fsck实用程序,这意味着如果系统崩溃,则所有数据都处于危险中(请考虑内核崩溃,断电和许多其他情况)。我亲身经历了这种数据丢失。如果您正在寻找数据安全性(谁不是?),请避免使用btrfs。截至目前,BTRFS用于试验文件系统垃圾邮件或非必需数据。

当然,您还是应该保留宝贵数据的备份,对吗?

对于超稳定的替代方案,请在PC / FreeBSD 9上使用ZFS。ZFS是值得信赖的企业文件系统,已经存在了很多年。RAIDZ2可以挽救生命。


2
对BTRFS的fsck已经来临
剑锋Troelsen

4

正如其他人提到的那样,Btrfs仍处于试验阶段,因此您可能还不想依赖Btrfs。

人们通常对BSD上的ZFS感到满意,但您可能还想考虑在Solaris上运行ZFS。

ZFS的BSD端口可能是最成熟的端口,但是它仍然落后于Solaris上ZFS的几个版本,因此您不会马上获得所有最新功能。从FreeBSD 8.0开始,仅支持ZFS版本13-例如,您将不会获得重复数据删除(ZFS版本21中引入了重复数据删除)。FreeBSD 8.0也不会提供iSCSI。

如果想要最新的ZFS功能,请选择OpenSolaris或Oracle Solaris或Nexenta(具有GNU用户名的Solaris派生产品)。


Sun Solaris?Oracle Solaris是什么意思?
andol 2010年

当然是。:)

我一直在测试Nexenta并对此感到满意

4

正如其他人已经指出的那样,BTRFS并不是真正的生产质量,因此,如果您需要今天可用的功能,ZFS是一个更好的选择。

有关BTRFS的一些背景以及与ZFS的不同之处,请参见LWN文章


4

我仍然是ZFS用户(在Solaris和Linux上),但是在后者上,我现在将btrfs视为其最新版本(2012年3月),其中包括新功能,性能改进,错误修复以及非常期望的AFS版本。具有修复功能的btrfsfsck

根据该新闻稿,Btrfs文件系统现已投入生产。


1
不幸的是,Oracle似乎是唯一一家表示btrfs已准备好生产的Linux供应商。似乎还为时过早,但是对于需要大磁盘的中型系统,几乎没有选择。磁盘越来越大,以至于磁盘上不可避免的静默数据损坏是不可能的,而fscking 3TB卷是不切实际的。
Stefan Lasiewski 2012年

Oracle是btrfs的主要开发人员,因此成为第一家在生产中支持btrfs的供应商就不足为奇了。而且,对于大多数人来说,缺少有效的fsck就是阻止他们使用btrfs的原因。最后,鉴于存在两个校验和的元数据副本,因此静默数据损坏不太可能使btrfs文件系统无法卸载。根据发行说明,可疑文件系统损坏的主要原因是已修复的缓存刷新错误。
jlliagre 2012年


1

在寻找相同的东西时,我偶然发现了FreeBSD Wiki中有关ZFS在FreeBSD中的状态的信息。看起来FreeBSD正在迎头赶上。

资料来源:http : //wiki.freebsd.org/ZFSTuningGuide

ZFS的FreeBSD发行历史如下:

  • 7.0+-原始ZFS导入,ZFS v6;需要大量调整才能稳定运行(不再受支持)
  • 7.2-仍为ZFS v6,改进了内存处理,amd64可能不需要调整内存(不再受支持)
  • 7.3+-向后移植新的ZFS v13代码,类似于8.0代码
  • 8.0-新的ZFS v13代码,许多错误修复-建议在所有过去的版本中使用。(不再受支持)
  • 8.1+-ZFS v14
  • 8.2+-ZFS v15
  • 9.0+-ZFS v28

追赶是的;总是至少落后几个版本。
克里斯·S
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.