btrfs文件系统——更加高级的文件系统

Btrfs 文件系统:

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

GPL ,Oracle公司在2007年研发,支持CoW(对文件快照),为了取代ext3,ext4,xfs

核心特点:

         多物理卷支持:btrfs可由多个底层物理卷组成,支持RAID,以及联机“添加”、“移除”,“修改”

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

         数据及元数据校验码:checksum

         子卷:sub_volume

         快照:支持快照的快照

         透明压缩

文件系统的创建:

mkfs.btrfs

         -L 'LABEL':设定卷标

         -d <type>:数据块组成type:raid0, raid1, raid5, raid6, raid10, single

         -m <profile>:元数据块组成type:raid0, raid1, raid5, raid6, raid10, single, dup

         -O <feature>

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

例如:mkfs.btrfs -L mybtr /dev/sd{b,c,d}

    把3块磁盘创建为一个btrfs系统

属性查看(filesystem):

btrfs filesystem show

    查看btrfs分区信息

btrfs filesytem df /挂载点

    显示分区使用情况

btrfs filesystem resize <+|->#[MG] /挂载点

    增加或减少挂载点多少空间

btrfs filesystem resize max /挂载点

    增加全部空间至挂载点

挂载文件系统:

mount -t btrfs /dev/DEVICE MOUNT_POINT

    /dev/DEVICE;可为btrfs中任意一块磁盘

扩展空间(向已存在的btrfs系统增加空间)(device):

btrfs device add /dev/DEVICE /挂载点

    向挂载点增加一个磁盘空间

btrfs device delete /dev/DEVICE /挂载点

    把挂载点某个磁盘卸载

扩展空间后必须使用命令来平衡btrfs系统中数据存放

    btrfs balance start /挂载点

改变btrfs系统属性(balance):

btrfs banlance start MOUNT_POINT

    平衡btrfs系统中数据

btrfs banlance status MOUNT_POINT

    显示btrfs平衡数据过程(磁盘数据过少,不容易看到)

btrfs balance start -dconvert=single MOUNT_POINT

    修改btrfs文件系统的数据存放格式

btrfs balance start -mconvert=raid1 MOUNT_POINT

    修改btrfs文件系统的元数据存放格式

创建子卷和快照(subvolume):

btrfs subvolume list MOUNT_POINT

btrfs subvolume show MOUNT_POINT

    查看子卷ID等信息

btrfs subvolume create MOUNT_POINT/dir

    创建名为dir的子卷

挂载子卷的方式:

    mount -o subvol=dir /dev/sd# MOUNT_POINT<新挂载点>

        /dev/sd#:为btrfs文件系统中的任意一个磁盘都可

btrfs subvolume delete MOUNT_POINT/dir

    删除子卷


mount /dev/sdb /mydata  挂父卷,子卷自动挂载

btrfs subvolume snapshot MOUNT_POINT MOUNT_POINT/snapshot_dir

    创建父卷或子卷的快照

btrfs subvolume delete MOUNT_POINT/snapshot_dir

    删除快照

透明压缩机制:

mount -o compress={lzo|zlib} DEVICE MOUNT_POINT

如何升级为btrfs文件系统:

btrfs-convert /dev/DEVICE

    升级为btrfs文件系统

btrfs-convert -r /dev/DEVICE

    降级成原来的系统

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

(0)
megedugaomegedugao
上一篇 2016-08-31
下一篇 2016-08-31

相关推荐

  • 第四周作业

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 [root@wlm ~]# useradd tuser1 [root@wlm ~]# cp -r etc/skel/ /home/tuser1/…

    Linux干货 2016-11-21
  • 循环语句for、while、until

    作用:    循环语句的作用是它可以让一段代码重复的执行,直到所需条件不满足为止。 在linux中变量的赋值方式有三种:       第一:直接等于号赋值       第二:通过read交互赋值       第三:for循环的赋值 bash脚本中的循…

    Linux干货 2016-08-22
  • Linux硬链接和软链接的区别

    一.Linux链接概念 Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。默认情况下,ln命令产生硬链接。 【硬连接】 硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个…

    Linux干货 2016-10-29
  • 条件测试与基础运算

    变量类型: 整形 数值型 字符型 byte boolen 单精度 双精度 变量种类: 环境变量– 对所有进程有效 本地变量– 仅对当前shell有效 局部变量– 仅在函数中的某一段有效 位置变量– $1,$2,$3,$4 特殊变量– $?,$0,$*,$@,$#,$$ 变量命名法则: 1.不能出现程…

    Linux干货 2017-04-16
  • 在VMware workstations中安装CentOS-7-x86_64-Everything-1611.ISO

      对于最近在Linux学习的过程中,许多同学对CentOS系统的详细配置还不熟悉,于是我编写此详细步骤供大家参考。 工具: VMware workstations; CentOS-7-x86_64-Everything-1611.iso; 准备工作:  1、先要下载一个系统镜像centOS-7-x86_64-Everythin…

    2017-07-11
  • Linux基础知识——网络管理基础

    OSI七层模型与TCP/IP模型的区别 写一个脚本,使用ping命令探测172.168.250.1-172.168.250.254之间的所有主机的在线状态,在线的用绿色表示,不在线的使用红色表示 #!/bin/bash for ((IP=1;IP<=254;IP++))     do  &nb…

    Linux干货 2016-12-11

评论列表(1条)

  • 马哥教育
    马哥教育 2016-09-02 10:20

    文章思路清晰,整篇博客能让人看到很多专业性所在,还能看出很用心的地方,革命尚未成功,同志仍需努力啊,加油!