btrfs管理及其应用

btrfs文件系统是由Oracle于2007年进行研发,也是为了取代Linux系统中的ext文件系统,它的功能可比ext系列文件系统强大多了,除了支持ext系列文件系统的功能外,还可支持以下几种,允许在线调整btrfs文件系统的大小;内建了raid功能;允许建立子卷;而且支持快照与子卷的快照;透明压缩功能;以及多物理卷的支持、添加,移除,修改;还有元数据和数据效验码。

  btrfs文件系统的创建:

    创建btrfs文件系统,并且命名卷标为mydata.

    1.jpg

    这里还有几个参数:

              -L:指明卷标

              -d:指明数据存储的类型如: raid0, raid1, raid5, raid6, raid10, single(单个设备)

              -m:指明元数据存储的类型:raid0, raid1, raid5, raid6, raid10, single(单个设备)

              -O :格式化的同时并且指明特性,可以执行mkfs.btrfs -O list-all查看所有支持的feature。

    将创建好的mydata挂载到/mydata。

    1.jpg

    在这里我们只需要指明一个物理卷即可

    如果我们要缩减btrfs,假如缩减5G。可利用命令btrfs filesystem

    1.jpg

    如果我们要将其增大5G,或者将其增到最大。可使用一下命令

    1.jpg

   假如有一天我们的空间不够用,需要加一块物理卷sdd。则执行btrfs device

    1.jpg

   但是新添加进来的物理卷又没有数据,怎么才能使原来的数据能均分到此物理卷呢,可执行btrfs balance [OPTION] /mydata

    1.jpg

    既然能添加,那么怎么来移除呢?但是移除之前,一定要确认数据可以放的下,要不然有些数据就会无法访问了。

    1.jpg

    如果要修改数据与元数据的类型,假如要将元数据改为raid1,将数据改为raid5,,将如何操作呢?

   1.jpg

   在/mydata下创建子卷logs,这里就要用到btrfs subvolume.

   1.jpg

   子卷就创建成功了,查看一下/mydata下的子卷。

   1.jpg

  注意:如果卸载/mydata下有子卷,如果卸载/mydata后,它的子卷也会跟着卸载,而挂载/mydata后,它下面的子卷也会跟着挂载。如果只想挂载子卷到/mnt下,可执行一下命令

   1.jpg

  如果要删除子卷,先要卸载/mnt,然后挂载子卷的顶级卷,再执行删除

   1.jpg

  给/mydata下的子卷做个快照。命令为logs_snap.

   1.jpg 

  注意:子卷与子卷的快照必须在同一卷下。

  删除logs的快照logs_snap

  1.jpg

  如果是给单个文件做快照,可执行:

  1.jpg

  怎么将ext文件转换为btrfs文件呢.,假如/dev/sdd1为ext4文件,现在要将它转换为btrfs文件。

  1.jpg

  注意转换前必须进行检测,而且是强制检测。

  如果要将转换成功的文件又转换回去,则执行:

  1.jpg

   

         

原创文章,作者:微,如若转载,请注明出处:http://www.178linux.com/25448

(0)
微
上一篇 2016-07-26 09:59
下一篇 2016-07-26 10:00

相关推荐

  • Linux命令之hash

    hash的指令,参数。

    2018-07-29
  • passwd

    http://www.cnblogs.com/wzhuo/p/6706774.html

    Linux干货 2017-04-17
  • lvs负载集群实验(实现wordpress)

    项目要求: (1) lvs 调度两台 nginx+php-fpmreal-server,采用 dr 模型,调度算法为 rr (2) mariadb 为 real-server 提供数据库,nfs 挂载至 2 台 real-server 提供文件服务 (3) 由于实验环境地址冲突将VIP替换为172.18.60.60 实施步骤: 一、配置NFS+mariadb…

    2017-05-10
  • 第一周博客(1)

    计算机的组成及其功能。

    Linux笔记 2018-05-12
  • crm命令行命令详解

    crm -status 显示当前集群状态 -configure 配置集群 a.show xml 显示当前集群配置信息(xml格式) b.property 显示集群可用的全局属性(键入之后按两下Tab) -verifiy 校验 -commit 提交 -node a.online 设置当前节点上线 b.show 显示当前节点状态 c.standby 将当前节点设…

    Linux干货 2017-11-04
  • 第六周

    1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; :%s/^[[:space:]]\+/#&/ 2、复制/boot/grub/grub.conf至/tmp目录中,删除/tmp/grub.conf文件中的行首的空白字符; :%s/^[[:space:]]\…

    Linux干货 2016-09-19