1. 简介

1.1 Btrfs(B-tree,Butter FS,Better FS)

1.2. 遵循GPL,由oracle在2007年研发,支持CoW

1.3. 主要为了替代早期的ext3/ext4,红帽在RHEL6上开始尝试使用xfs

1.4. 特性:

    支持raid

    多物理卷支持:btrfs可由多个底层物理卷组成

    联机“增加”“删除”“修改”

    写时复制更新机制(CoW):复制,更新及替换指针,而非就地更新;

    数据及元数据校验码:checksum

    子卷:sub_volume

    快照:支持快照的快照,类似增量备份

    透明压缩:

2. 命令详解:

2.1. mkfs.btrfs

    -L 'LABEL'

    -d <type>:raid0,raid1,raid5,raid6,raid10,single

    -m <profile>:raid0,raid1,raid5,raid6,raid10,single,dup

    -O <feature>

      -O list-all:列出支持的所有feature

2.2. 属性查看:btrfs filesystem show

3.3. 挂载文件系统:mount -t btrfs /dev/sdb MOUNT_POINT #挂载任何其中的一个设备即可

3.4. 透明压缩机制:mount -o compress={lzo|zlib} DEVICE MOUNT_POINT

3.5. 调整文件系统大小:btrfs filesystem resize {+NUM|-NUM|MAX} MOUNT_POINT #需要使用df命令才能看到结果

3.6. 添加设备:btrfs device add DEVICE MOUNT_POINT

3.7. 平衡数据:btrfs balance {start|pause|status} MOUNT_POINT

3.8. 删除文件设备:btrfs filesystem delete /dev/sdb /mydata #在设备被拆除前会自动移动其中的数据到其他盘中

3.9. 改变源数据raid级别:btrfs balance start -mconvert={raid1|raid0|raid5} MOUNT_POINT

3.10. 查看子卷信息:btrfs subvolume list MOUNT_POINT #如果父卷挂载,则子卷全部被挂载

3.11. 创建子卷:btrfs subvolume create MOUNT_POINT/SUB_POINT

3.11. 挂载子卷:mount -o subvol=logs /dev/sdb MOUNT_POINT

3.12. 删除子卷:btrfs subvolume delete MOUNT_POINT

3.13. 创建子卷快照:btrfs subvolume snapshot SUB_POINT SNAP_POINT

3.14. 删除子卷快照:btrfs subvolume delete SNAP_POINT

3.15. 创建文件快照:

3.16. ext3/ext4转成btrfs:btrfs-convert EXT4_FILESYSTEM

【Linux】【Services】【Disks】bftfs的更多相关文章

  1. 【linux之挂载,Raid,LVM】

    一.挂载,卸载 挂载:将新的文件系统关联至当前根文件系统卸载:将某文件系统与当前根文件系统的关联关系移除 cat /etc/mtab 存储着已经挂载的文件系统 (跟 mount 一样) mount:显 ...

  2. 【Linux&amp;Unix--open/close/write/read系统调用】

    个人学习整理.如有不足之处,请不吝不吝赐教. 转载请注明:@CSU-Max 系列博文:      Linux&Unix学习第一弹 -- 文件描写叙述符与权限  Linux&Unix学习 ...

  3. 【linux之设备,分区,文件系统】

    一.设备 IDE磁盘的设备文件采用/dev/hdx来命名,分区则采用/dev/hdxy来命名,其中x表示磁盘(a是第一块磁盘,b是第二块磁盘,以此类推), y代表分区的号码(由1开始,..3以此类推) ...

  4. 【linux之进程管理,系统监控】

    一.进程管理 前台进程:一般是指占据着标准输入和/或标准输出的进程后台进程:不占据默认开启的进程都是前台进程ctrl+C 中断ctrl+z 从前台转入后台bg 后台进程编号 让其在后台运行ls -R ...

  5. 【Linux磁盘优化管理--RAID和LVM】

    在现阶段的企业环境中,为了数据的安全性及完整性必须要有一个合理的存储方案.面对着每秒可能产生超过几TB的数据,考虑到磁盘能不能实现 热冗余,及扩容,缩容.Linux给出了RAID(磁盘阵列)以及LVM ...

  6. 【Linux 内核网络协议栈源码剖析】网络栈主要结构介绍(socket、sock、sk_buff,etc)

    原文:http://blog.csdn.net/wenqian1991/article/details/46700177 通过前面的分析,可以发现,网络协议栈中的数据处理,都是基于各类结构体,所有有关 ...

  7. 【linux之链接,函数,随机数】

    一.链接 硬链接(hard link):同一个文件使用了多个别名.新建文件是已经存在的一个别名,,当原文件删除时,新建的文件仍然可以使用.硬链接和原来的文件没有什么区别,而且共享一个inode号.通过 ...

  8. 【Linux运维-集群技术进阶】Nginx+Keepalived+Tomcat搭建高可用/负载均衡/动静分离的Webserver集群

    额.博客名字有点长.. . 前言 最终到这篇文章了,心情是有点激动的. 由于这篇文章会集中曾经博客讲到的全部Nginx功能点.包含主要的负载均衡,还有动静分离技术再加上这篇文章的重点.通过Keepal ...

  9. 5.2【Linux 内核网络协议栈源码剖析】socket 函数剖析 ☆☆☆

    深度剖析网络协议栈中的 socket 函数,可以说是把前面介绍的串联起来,将网络协议栈各层关联起来. 应用层 FTP SMTP HTTP ... 传输层 TCP UDP 网络层 IP ICMP ARP ...

  10. 【Linux下安装使用virtualenv与virtualenvwrapper】

    virtualenv virtualenv是一个可以帮助我们管理不同Python环境的绝好工具. virtualenv是一个可以在系统中建立多个不同且相互不干扰的虚拟环境. 下面的步骤将创建两个独立的 ...

随机推荐

  1. offsetX各种值总结

    pageX: 页面X坐标位置 pageY: 页面Y坐标位置 screenX: 屏幕X坐标位置 screenY: 屏幕Y坐标位置 clientX: 鼠标的坐标到页面左侧的距离 clientY: 鼠标的坐 ...

  2. 经过4次优化我把python代码耗时减少95%

    背景交代 团队做大学英语四六级考试相关服务.业务中有一个care服务,购买了care服务考试不过可以全额退款,不过有一个前提是要完成care服务的任务,比如坚持背单词N天,完成指定的试卷. 在这个背景 ...

  3. Spring Cloud Gateway的断路器(CircuitBreaker)功能

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  4. [cf559E]Gerald and Path

    将所有线段的端点(即$a_{i}$和$a_{i}\pm l_{i}$)离散,并按照$a_{i}$从小到大排序 定义$f_{i,,j}$表示前$i$条线段在位置$j$之前最多能覆盖的长度(默认覆盖到$j ...

  5. 论文翻译:2020_WaveCRN: An efficient convolutional recurrent neural network for end-to-end speech enhancement

    论文地址:用于端到端语音增强的卷积递归神经网络 论文代码:https://github.com/aleXiehta/WaveCRN 引用格式:Hsieh T A, Wang H M, Lu X, et ...

  6. 🏆【Alibaba中间件技术系列】「RocketMQ技术专题」让我们一起探索一下DefaultMQPushConsumer的实现原理及源码分析

    RocketMQ的前提回顾 RocketMQ是一款分布式.队列模型的消息中间件,具有以下特点: 能够保证严格的消息顺序 提供丰富的消息拉取模式 高效的订阅者水平扩展能力 实时的消息订阅机制 亿级消息堆 ...

  7. N皇后问题解法

    // // Created by Administrator on 2021/8/5. // #ifndef C__TEST01_NQUEENS_HPP #define C__TEST01_NQUEE ...

  8. JavaSE复习巩固

    第二天:复习if语句,扫描器,switch语句,循环语句 1.if语句---流程控制语句 if之前学的语句是顺序结构 1.1 单个if的语法结构 if(条件判断){ 满足条件需要做的事情: } int ...

  9. Python 3 快速入门 3 —— 模块与类

    本文假设你已经有一门面向对象编程语言基础,如Java等,且希望快速了解并使用Python语言.本文对重点语法和数据结构以及用法进行详细说明,同时对一些难以理解的点进行了图解,以便大家快速入门.一些较偏 ...

  10. stat命令的实现-mysate(必做)

    学习使用stat(1),并用C语言实现 1. 提交学习stat(1)的截图 使用 man 1 stat 查看帮助手册 从图中可以看到stat的用法是display file or file syste ...