Arch实战btrfs
发表于 : 2012-05-17 21:31
btrfs是linux下一代文件系统,由oracle、radhat、intel、suse等多个公司和社区研发,采用GPL协议发布(Linux Only),目前正逐步稳定下来。Arch的内核很新,也对btrfs提供了较好的支持,我尝试了一次全新的整个系统基于btrfs的安装,和大家分享一下心得。
首先,为什么我们要用btrfs?btrfs有很多吸引人的特性,比如:
1、类似lvm的多设备文件系统,目前支持raid0、raid1、raid10,预计在3.5内核中加入raid5/6的支持。
2、类似于ZFS的pool概念:一个分卷(volume)可以横跨多个物理分区,分卷内有subvolume共享volume的空间。比如为了重装能保留/home,你的/分了20G,/home分了60G,某天/不够用了,怎么办?btrfs可以把/和/home作为subvolume,共享剩余空间,同时在/遇到不可逆损坏时保持/home的完整性。不过有一个限制:btrfs上不能放置swap文件,会损坏文件系统。请使用独立的swap分区。
3、快照。btrfs能对任何subvolume进行快照,同时其copy-on-write的特性可以让多个快照引用同一个文件,当文件在一个快照中被修改时再复制一份储存在这个快照中,所以说,一个快照初始时几乎不占硬盘空间,随着系统使用快照和当前系统的差异越来越大,快照才占用越来越多的空间。
4、透明压缩。支持文件系统级的压缩,目前支持zlib和lzo两种算法,后续会加入snappy和lz4等。现在系统往往硬盘读取速度是瓶颈,牺牲一些CPU时间压缩数据而减少硬盘读写往往能提高整体效率。 测评:http://www.phoronix.com/scan.php?page=a ... 2638&num=1
5、设计时就考虑到了SSD的优化
我觉得以上是比较吸引桌面用户的地方,还有很多别的特性可见:https://btrfs.wiki.kernel.org/index.php/Main_Page 可以说,目前来看,除了ZFS的deduplication功能,btrfs是一个能和ZFS正面抗衡的linux文件系统。
首先,为什么我们要用btrfs?btrfs有很多吸引人的特性,比如:
1、类似lvm的多设备文件系统,目前支持raid0、raid1、raid10,预计在3.5内核中加入raid5/6的支持。
2、类似于ZFS的pool概念:一个分卷(volume)可以横跨多个物理分区,分卷内有subvolume共享volume的空间。比如为了重装能保留/home,你的/分了20G,/home分了60G,某天/不够用了,怎么办?btrfs可以把/和/home作为subvolume,共享剩余空间,同时在/遇到不可逆损坏时保持/home的完整性。不过有一个限制:btrfs上不能放置swap文件,会损坏文件系统。请使用独立的swap分区。
3、快照。btrfs能对任何subvolume进行快照,同时其copy-on-write的特性可以让多个快照引用同一个文件,当文件在一个快照中被修改时再复制一份储存在这个快照中,所以说,一个快照初始时几乎不占硬盘空间,随着系统使用快照和当前系统的差异越来越大,快照才占用越来越多的空间。
4、透明压缩。支持文件系统级的压缩,目前支持zlib和lzo两种算法,后续会加入snappy和lz4等。现在系统往往硬盘读取速度是瓶颈,牺牲一些CPU时间压缩数据而减少硬盘读写往往能提高整体效率。 测评:http://www.phoronix.com/scan.php?page=a ... 2638&num=1
5、设计时就考虑到了SSD的优化
我觉得以上是比较吸引桌面用户的地方,还有很多别的特性可见:https://btrfs.wiki.kernel.org/index.php/Main_Page 可以说,目前来看,除了ZFS的deduplication功能,btrfs是一个能和ZFS正面抗衡的linux文件系统。