一、btrfs基本概念  

btrfs文件系统是2007年Oracle开发,支持GPL协议,为了取代Linux早期的ext系列文件系统。
btrfs核心特性:
    多物理卷支持:btrfs可由多个底层物理卷组成,支持RAID,以联机添加、移除、修改操作
    写时复制更新机制(CoW):复制、更新及替换指针,而非直接更新原文件
    数据及元数据校验码:checksum
    子卷:sub_volume
    快照:支持快照的快照
    透明压缩:

二、btrfs基本应用

创建btrfs文件系统:  
      mkfs.btrfs:
        -L 'LABEL':
        -m <profile>: 指明元数据存放机制{raid0,raid1,raid5,raid6,raid10,single}
        -d <type>: 指明数据存放时的类型{raid0,raid1,raid5,raid6,raid10,single,dup}
        -O <feature>
          -O list-all: 列出支持的所有feature 
直接格式化: mkfs.btrfs -L mydata /dev/sdab /dev/sdac
    btrfs filesystem show: 显示创建的btrfs文件系统的信息
    btrfs filesystem show /dev/sdb: 查看指定设备btrfs文件系统的信息
    btrfs filesystem [OPTION]
          sync: 将文件系统缓存在内存中的数据同步到磁盘中
          df: 查看一个已挂载的btrfs文件系统空间使用情况: btrfs filesystem df /mydata
          defragment: 磁盘碎片整理
          resize: 修改大小, btrfs filesystem resize -10G /mydata
          label:显示卷标或显示卷标
    btrfs device [OPTION] /dev/sdd: 对硬件设备进行操作
          add: 添加设备
          deleate: 移除设备,数据自动移到其他设备上,不影响正常访问
          scan: 扫描设备
    btrfs balance [OPTION] /dev/DEVICE:均衡数据到新增加的设备上
          start [OPTION]<filters>:开始balance
            -d<filter>:修改数据的组织机制
            -m<filter>: 修改元数据的组织机制
            -s<filter>: 修改系统的组织机制
              filter:
                convert
                  比如btrfs balance start -dconvert=raid5 /mydata 修改数据的raid级别
                  比如 -mconvert 修改元数据的raid级别           pause:暂停
          status:执行状态
          cancel:取消
          resume:继续
    btrfs subvolume : 子卷操作
          create: 创建子卷: 比如:btrfs subvolume create /mydata/logs
          delete: 删除子卷
          list: 列出所有的子卷
          get-default: 查看默认卷
          set-default: 设置默认卷
          snapshot: 快照 比如; btrfs subvolume snapshot /mydata/logs /mydata/logs_snapshot
                对单个文件创建快照: cp --reflink grub2.cfg grub2.cfg_snap
          show: 查看子卷详细信息
    只挂载子卷: 例如 mount -o subvol=logs /dev/sdb /mnt
              或 mount -o subvolid=267 /dev/sdb /mnt
    挂载文件系统:  mount -t btrfs /dev/sdb /MOUNT_POINT
    透明压缩机:    mount -o compress=(lzo|zlib) DEVICE MOUNT_POINT

三、应用

    ext文件系统转为btrfs文件系统:
          1. umount /mnt
          2. fsck -f /dev/sdd1
          3. btrfs -convert /dev/sdd1
          4. btrfs filesystem show
          5. mount /dev/sdd1 :可以挂载使用了
    btrfs文件系统降级回到ext文件系统:
           btrfs -convert -r /dev/sdd1

Btrfs管理及应用的更多相关文章

  1. 第9天【btrfs文件系统、压缩工具及for语句、程序包管理】

    btrfs文件系统管理与应用(01)_recv halt centos7: mkfs.btrfs命令: -L:指定卷标 -m:元数据 -d:指定数据存储的类型,raid1.5.10.single 实验 ...

  2. btrfs的介绍与使用

    源文献:http://www.ibm.com/developerworks/cn/linux/l-cn-btrfs/index.html#ibm-pcon 简单看了一下这篇文章,对其中一些机制的实现还 ...

  3. 新一代 Linux 文件系统 btrfs 简介

    https://www.ibm.com/developerworks/cn/linux/l-cn-btrfs/ Btrfs 简介 文件系统似乎是内核中比较稳定的部分,多年来,人们一直使用 ext2/3 ...

  4. 磁盘及文件系统管理(以及btrfs)

    Linux系统管理 磁盘分区及文件系统管理 raid lvm 网络属性管理 程序包管理 sed及awk 进程查看和管理 内核管理(内核的编译和安装) 系统启动流程 定制,编译内核,busybox 系统 ...

  5. btrfs文件系统简单学习

    1 btrfs文件系统 btrfs文件系统在生产环境应用还不多,因此,本文仅仅简单学习. 1.1 btrfs文件系统核心特性 1)多物理卷支持:btrfs可由多个底层物理卷组成(可以是单块物理磁盘,也 ...

  6. 学习OpenStack之 (4): Linux 磁盘、分区、挂载、逻辑卷管理 (Logical Volume Manager)

    0. 背景: inux用户安装Linux操作系统时遇到的一个常见的难以决定的问题就是如何正确地评估各分区大小,以分配合适的硬盘空间.普通的磁盘分区管理方式在逻辑分区划分好之后就无法改变其大小,当一个逻 ...

  7. Docker存储驱动之Btrfs简介

    简介 Btrfs是下一代的copy-on-write文件系统,它支持很多高级特性,使其更加适合Docker.Btrfs合并在内核主线中,并且它的on-disk-format也逐渐稳定了.不过,它的很多 ...

  8. linux下fdisk分区管理、文件系统管理、挂载文件系统等

    分区管理工具有:fdisk, parted, sfdisk fdisk:对于一块硬盘来讲,最多只能管理15分区: # fdisk -l [-u] [device...]  查看硬盘设备分区信息 # f ...

  9. Linux文件管理浅析(一) _磁盘管理基础

    本文主要讨论一些磁盘管理相关的基本概念,同时也是这一系列文章的第一篇,就是下图中的最下一层的一部分. 在Linux中,SATA/USB/SCSI接口都是使用SCSI模块实现的,所以使用这些接口的硬盘在 ...

随机推荐

  1. 并查集(disjoint)

    合并,查找的集合 第一,建立两个函数,一个用来查找(find),一个用来合并(merge): 如下的一个模板: 题目: 亲戚(Relations) 或许你并不知道,你的某个朋友是你的亲戚.他可能是你的 ...

  2. 500次访问之后php-cgi进程退出

    之前遇到过php-cgi进程意外退出的问题,以为是负载过高导致的,这几天在写一个向数据库插数据的程序,测试稳定性时又遇到这种问题. 于是搜索,找到了这篇文章:http://stackoverflow. ...

  3. caffe训练模型中断的解决办法(利用solverstate)

    caffe训练过程中会生成.caffemodel和.solverstate文件,其中caffemodel为模型训练文件,可用于参数解析,solverstate为中间状态文件 当训练过程由于断电等因素中 ...

  4. RabbitMQ的使用场景

    RabbitMQ的使用场景   1 大数据日志收集消息中间件应用场景     2 消息中间件在搜索系统DIH(伪实时)中的应用       伪实时的搜索系统:   后台系统:(作为生产者发送消息)   ...

  5. eclipse设置字体_字符编码_快捷键

    eclipse设置字体.字符编码.快捷键 1.设置字体: preferences->general->appearnce->colors and fonts-->basic-- ...

  6. Java多线程-----volatile关键字详解

       volatile原理     Java语言提供了一种稍弱的同步机制,即volatile变量,用来确保将变量的更新操作通知到其他线程.当把变量声明为volatile类型后, 编译器与运行时都会注意 ...

  7. ecplise问题总结

    ecplise 1.ecplise在运行的时候出现错误 Unable to execute dex: GC overhead limit exceeded GC overhead limit exce ...

  8. maven 核心概念

    1). 项目构建过程中的各个环节 . 清理 . 编译 . 测试 . 报告 . 打包 . 安装 . 部署 2). 配置环境变量 . 配置 JDK 配置 JAVA_HOME + PATH maven 需要 ...

  9. 什么是Unicode

    写这篇博客的原因, 从做软件开始,什么ASCII码, Unicode,UTF-8,UTF-16,UTF-32......这些鬼东西总是经常碰到,只知道这些鬼是编码格式,其他的就啥都不清楚了,既然总是遇 ...

  10. 【Alpha版本】冲刺阶段——Day2

    [Alpha版本]冲刺阶段--Day2 阅读目录 今日进展 问题困难 明日任务 今日贡献量 站立式会议 TODOlist [今日进展] 密码算法方面: 存储密码的步骤 使用CSPRNG生成一个长度足够 ...