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

相关推荐

  • 运维架构之httpd

    Web Service 传输层:提供进程地址 Port number tcp:传输控制协议,面向连接,通信前需建立虚拟链路,结束后拆除;0-65535 udp:用户数据报协议,无连接;0-65535 IANA 0-1023:众所周知,永久分配给固定应用使用;22/tcp(ssh)、80/tcp(http)、443/tcp(https) 1024-41951:…

    系统运维 2018-06-04
  • lvs 基本概念

    LVS(linux virtual machine) 的简写,是一个虚拟的服务器集群系统,主要用于4层负载均衡。 宗旨: 使用集群技术和Linux操作系统实现一个高性能、高可用的服务器. 很好的可伸缩性(Scalability) 很好的可靠性(Reliability),应该还是高可用吧 很好的可管理性(Manageability…

    Linux干货 2015-09-14
  • samba服务

    一、什么是SAMBA   Linux之间可以通过NFS服务方便的挂载远程主机上的共享目录,那么SAMBA主要是用于实现Windows主机与Linux主机之间共享文件互访。它们之间的通信依赖于CIFS协议。 二、SAMBA使用的daemon     1、nmbd:在Linux上实现NetBIOS;     &n…

    Linux干货 2016-02-14
  • 文件系统的挂载使用总结

    文件系统使用 除根文件系统以外的文件系统创建后要使用需要先挂载至挂载点后才可以被访问,挂载点即分区设备文件关联的某个目录文件,挂载命令mount和 卸载命令umount; 挂载点: mount_point,作为被挂载的文件系统的访问入口; 作为挂载点需要满足三个条件:  (1)这个目录事先存在  (2)使用未被或不会被其他进程使用到的目录…

    系统运维 2016-11-19
  • httpd服务之虚拟主机、访问控制、https配置详解

    前言 上文讲解了http协议及httpd的一些特性,是学习web服务需要掌握的一些基础知识,接下来让我们进一步了解httpd相关功能的配置,本文讲解的是虚拟主机,访问控制及https等功能的配置。 httpd之虚拟主机 虚拟主机共分为三种模式:基于IP、基于端口、基于主机名(FQDN) 实验环境介绍 开始之前,先介绍一下httpd在CentOS6.6版本及文…

    Linux干货 2015-04-14
  • 全球敏捷运维峰会Gdevops 2017成都站嘉宾主题提前看!

    2017年全球敏捷运维峰会(Gdevops, Global Devops Summit)将于2017年在成都、上海、北京、广州四城全面启动,本次峰会由上海市经济和信息化委员会指导,上海市云计算产业促进中心、DBAplus社群主办,数十家媒体单位共同支持,活动家提供全球敏捷运维峰会在线报名服务。 成都站即将于13日启航,搭车地址:https://www.huo…

    Linux干货 2017-05-11