我正在考虑在我的某些新服务器上使用哪种操作系统和文件系统,并且正在考虑使用带有 ZFS 的 Free BSD 或带有 BTRFS 的 Linux。
我在两个系统上都运行了程序,所以唯一的问题是文件系统的可靠性和性能等。
答案1
截至 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。
答案2
截至今天 (2012-02-01),btrfs 仍然缺少 fsck 实用程序,这意味着如果系统崩溃(例如内核崩溃、断电和许多其他情况),您的所有数据都处于危险之中。我亲身经历过这种数据丢失。如果您正在寻找数据安全(谁不是呢?),那么请避免使用 btrfs。截至目前,BTRFS 适用于实验文件系统爱好者或非必要数据。
当然,无论如何您都应该备份有价值的数据,对吗?
要想获得超稳定的替代方案,请在 PC/FreeBSD 9 上使用 ZFS。ZFS 是一种值得信赖的企业文件系统,已经存在多年。RAIDZ2 可以拯救生命。
答案3
正如其他人提到的,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 衍生产品)。
答案4
我仍然是 ZFS 用户(在 Solaris 和 Linux 上),但在 Linux 上,我现在会考虑使用 btrfs 作为其最新版本(2012 年 3 月)包括新功能、性能改进、错误修复,以及备受期待的具有修复功能的 btrfsfsck 版本。
据此新闻稿,Btrfs 文件系统现已准备好投入生产。