btrfs管理和应用

一、btrfs概念

       在btrfs中存在三种类型的数据,data, metadata和system。它们表示:

       DATA           数据块。

       METADATA       源数据。

       SYSTEM         映射关系、raid关系等信息。

          

       可以用btrfs filesystem show观察到这些信息,也可以简写为 btrfs fi sh 。

       RAID是profile的一种描述,包括条带(raid0, raid10),mirror(raid1),奇偶校验(raid 5,6)。

       profile         

       profile和block group结合起来,用来描述数据的分配策略或约束。例如:

       single表示只存一份数据,即每个block group都是独一无二的。

       DUP表示在一个块设备中存双份数据,即每个block group在 同一个块设备 中有一个一样的block group副本。

       RAID0表示条带,单个block group可能跨块设备存储。

       RAID10表示镜像加条带,单个block group可能跨块设备存储,其中每个部分都会在两个块设备中存成镜像。

二、创建btrfs文件系统

    例子:     

       mkfs.btrfs -n 4096 -m raid10 -d raid10 -L mydata  /dev/sdb /dev/sdc /dev/sdd /dev/sde

       -n 设置nodesize大小 -m -d 分别对应 data和metadata数据块的profile级别,-L 设置lable名称。

       raid10 最少需要4个块设备,所以这里加了4个盘。

三、挂载

     mount /dev/sdb  /mydata  mount选项里面有几个针对ssd固态硬盘的选项,如ssd ,ssd_spread , discard 以及 compress={no|lzo|zlib}。

四、调整btrfs文件大小

     btrfs fi resize +10G /mnt 有多个块设备的话需要指定块设备  btrfs fi resize 1:+10G /mnt 表示对第一个块设备增加10G空间 使用全部空间可以使用max表示

五、增加减少块设备

    btrfs device add /dev/sdf /mnt

    btrfs device delete /dev/sdf /mnt

六、负载均衡一下

    btrfs balance start /mnt

    同时通过 -mconvert=raid5 -dconvert=raid5 可以改变profile属性

    btrfs balance start -dconvert=raid5 -mconvert=raid5 /mnt

七、subvolume以及snapshot快照

    btrfs subvolume create /mnt/logs

    btrfs subvolume delete /mnt/logs

    btrfs subvolume list /mnt

    mount -o subvol=logs /dev/sdb /mnt(可以单独挂子卷到目录)

    btrfs subvolume snapshot /mnt/logs /mnt/logs_snapshot (建快照)

常用命令 

    btrfs filesystem show /mnt

    btrfs device scan

    btrfs filesystem df /mnt

    btrfs rescuse super-recover /dev/sdb

   

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

(0)
duiduifeiduiduifei
上一篇 2016-04-12 19:00
下一篇 2016-04-12 19:00

相关推荐

  • PHP通过Thrift操作Hbase

    HBase是一个开源的NoSQL产品,它是实现了Google BigTable论文的一个开源产品,和Hadoop和HDFS一起,可用来存储和处理海量column family的数据。官方网址是:http://hbase.apache.org 一 、HBase访问接口 1.  Native Java API,最常规和高效的访问方式,适合Hadoop …

    Linux干货 2015-05-18
  • Net25 第二周作业

    一、Linux上的文件管理类命令,其常用的使用方法和相关示例 1、ls:查看文件与目录 作用:ls命令用于显示目录内容,类似于DOS下的dir命令,它的使用权限是所有用户。 用法:ls [选项]…[文件]… 主要选项如下: -a:全部的文件,连同隐藏文件(开头为 .的文件)一起列出来 -A:列出全部的文件(连同隐藏文件,但不…

    系统运维 2016-12-11
  • iptables:iptables工具详解

    之前的博客聊了关于iptables防火墙工作原理的相关介绍, 本片将详细介绍iptables的使用。 一、 iptables 查看链表,创建链表,类命令     1. iptables [-t table] -N chain : 创建一条自定义规则的链      #&n…

    Linux干货 2015-08-06
  • 主从DNS 子域授权 基于域的转发和DNS视图的配置

    先把软件包的安装: yum install bind yum install bind-utils(DNS的查询工具,dig nslookup host) 事先我已经安装好了。 主从DNS的网络拓扑图: 主从DNS配置: 主从DNS服务器的同步可以有:完全区域同步(AXFR)和增量区域同步(IXFR),配置过程中要注意,增量备份时,需要调整区域文件中的SOA…

    Linux干货 2015-08-24
  • Mysql 多表联合查询效率分析及优化

    1. 多表连接类型 1. 笛卡尔积(交叉连接) 在MySQL中可以为CROSS JOIN或者省略CROSS即JOIN,或者使用','  如:  SELECT * FROM table1 CROSS JOIN table2  &nb…

    Linux干货 2015-04-13
  • Bash 的配置文件

    有时候,在定义了别名 alilas cls=clear  , 或者定义了 umask=033 等等,在logout 用户后再登录,会失效,因为这些本地变量,仅对当前shell生效。而要保留配置,使其永久生效,就需要将这些定义的写入配置文件中保存。下面介绍下bash的配置文件:  Bash的配置文件可以分为: profile类: /etc/…

    Linux干货 2015-04-04