btrfs文件系统是由Oracle于2007年进行研发,也是为了取代Linux系统中的ext文件系统,它的功能可比ext系列文件系统强大多了,除了支持ext系列文件系统的功能外,还可支持以下几种,允许在线调整btrfs文件系统的大小;内建了raid功能;允许建立子卷;而且支持快照与子卷的快照;透明压缩功能;以及多物理卷的支持、添加,移除,修改;还有元数据和数据效验码。
btrfs文件系统的创建:
创建btrfs文件系统,并且命名卷标为mydata.
这里还有几个参数:
-L:指明卷标
-d:指明数据存储的类型如: raid0, raid1, raid5, raid6, raid10, single(单个设备)
-m:指明元数据存储的类型:raid0, raid1, raid5, raid6, raid10, single(单个设备)
-O :格式化的同时并且指明特性,可以执行mkfs.btrfs -O list-all查看所有支持的feature。
将创建好的mydata挂载到/mydata。
在这里我们只需要指明一个物理卷即可
如果我们要缩减btrfs,假如缩减5G。可利用命令btrfs filesystem
如果我们要将其增大5G,或者将其增到最大。可使用一下命令
假如有一天我们的空间不够用,需要加一块物理卷sdd。则执行btrfs device
但是新添加进来的物理卷又没有数据,怎么才能使原来的数据能均分到此物理卷呢,可执行btrfs balance [OPTION] /mydata
既然能添加,那么怎么来移除呢?但是移除之前,一定要确认数据可以放的下,要不然有些数据就会无法访问了。
如果要修改数据与元数据的类型,假如要将元数据改为raid1,将数据改为raid5,,将如何操作呢?
在/mydata下创建子卷logs,这里就要用到btrfs subvolume.
子卷就创建成功了,查看一下/mydata下的子卷。
注意:如果卸载/mydata下有子卷,如果卸载/mydata后,它的子卷也会跟着卸载,而挂载/mydata后,它下面的子卷也会跟着挂载。如果只想挂载子卷到/mnt下,可执行一下命令
如果要删除子卷,先要卸载/mnt,然后挂载子卷的顶级卷,再执行删除
给/mydata下的子卷做个快照。命令为logs_snap.
注意:子卷与子卷的快照必须在同一卷下。
删除logs的快照logs_snap
如果是给单个文件做快照,可执行:
怎么将ext文件转换为btrfs文件呢.,假如/dev/sdd1为ext4文件,现在要将它转换为btrfs文件。
注意转换前必须进行检测,而且是强制检测。
如果要将转换成功的文件又转换回去,则执行:
原创文章,作者:微,如若转载,请注明出处:http://www.178linux.com/25448