高级文件系统管理2

五、btrfs文件系统

    技术预览版

    Btrfs (B-tree, Butter FS, Better FS), GPL, Oracle,2007, CoW

    核心特性:

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

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

        数据及元数据校验码: checksum

        子卷: sub_volume

        快照:支持快照的快照

        透明压缩

    btrfs文件系统

    文件系统创建:

    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

        mkfs.btrfs -L mydata -f /dev/sdb /dev/sdc

    属性查看:

        btrfs filesystem show ; blkid

        btrfs filesystem show –mounted|all-devices

    挂载文件系统:

        mount -t btrfs /dev/sdb MOUNT_POINT

    透明压缩机制:

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

    在线修改文件系统大小

    man btrfs

        btrfs filesystem resize -10G /mydata

        btrfs filesystem resize +5G /mydata

        btrfs filesystem resize max /mydata

    查看

        df –lh; btrfs filesytem df /mydata

    添加设备:man btrfs-device

        btrfs device add /dev/sdd /mydata

    平衡数据:man btrfs-banlance

        btrfs banlance status /mydata

        btrfs banlance start /mydata

        btrfs banlance pause /mydata

        btrfs banlance cancel /mydata

        btrfs banlance resume /mydata

    删除设备

        btrfs device delete /dev/sdb /mydata

    修改raid级别:注意raid对成员数量的要求

        btrfs balance start -mconvert=raid1|raid0|raid5 /mydata

        btrfs balance start -dconvert=raid1|raid0|raid5 /mydata

    子卷管理:man btrfs-subvolume

        btrfs subvolume list /mydata 查看子卷ID等信息

        btrfs subvolume create /mydata/subv1

        umount /mydata

        mount -o subvol=subv1 /dev/sdd /mnt/subv1

        btrfs subvolume show /mnt/subv1

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

        mount -o subvolid=### /dev/sdd /mnt/subv1

        btrfs subvolume show /mnt/subv1

        btrfs subvolume delete /mydata/subv1

        创建快照:

        btrfs subvolume snapshot /mydata/subv1 \

        /mydata/snapshot_subv1

        btrfs subvolume list /mydata

    删除快照

        btrfs subvolume delete /mydata/snapshot_subv1

    对一个文件做快照(当前卷)

        cd /mydata/subv1

        cp –reflink testfile snapshot_testfile

    实验ext4和btrfs互转

        btrfs balance start -dconvert=single /mydata

        btrfs balance start -mconvert=raid1 /mydata

        btrfs device delete /dev/sdd /mydata

        fdisk /dev/sdd分区

        mkfs.ext4 /dev/sdd1

        mount /dev/sdd1 /mnt

        cp /etc/fstab /mnt

        umount /mnt/

        fsck -f /dev/sdd1

        btrfs-convert /dev/sdd1 转化ext4为btrfs

        btrfs fikesystem show

        mount /dev/sdd1 /mnt

    btrfs转化ext4文件系统

        umount /mnt

        btrfs-convert -r /dev/sdd1

        blkid /dev/sdd1

    再转换成btrfs

        btrfs-convert /dev/sdd1

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

(0)
DYWDYW
上一篇 2016-09-09 10:25
下一篇 2016-09-09 12:30

相关推荐

  • 马哥教育网络班21期第7周课程练习

    1、创建一个10G分区,并格式为ext4文件系统;    (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl;    (2) 挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳; [root@centos7study&nbs…

    Linux干货 2016-08-29
  • 前三天基础-Linux文件系统概论

    Linux之我见     在2016农历丙申年2016年猴年,对于小白的我来说接触到了江湖流传的武功秘籍之-Linux心法,第一次接触到命令行,知道在键盘上随便敲击命令就可以满屏跑数据,就像看过的美国大片里黑客帝国里面的画面,感觉学会好后可以装逼了,废话不多说了,允许在下斗胆介绍Linux文件系统。     &nbsp…

    Linux干货 2016-03-24
  • http和apache服务器

    超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。 http/1.1 :1997年1月 引入了持久连接(persistent connection) , tcp连接默认不关闭,可以被多个请…

    2017-12-05
  • Shell脚本编程基础中() (()) [ ] [[ ]] 的使用

    Shell脚本编程基础中() (()) [ ] [[ ]] 的使用 () 生成子进程,括号内的命令将会在子进程中运行,父进程不能够读取在子进程中创建的变量 例: 新建个脚本文件,写入 则执行结果为 $()相当于 ` `  ,返回括号内命令执行结果 (( )) 用作四则运算和逻辑运算,并且支持多个表达式 例: 当 (( )) 加$,则是将获得表达式值,赋值给左…

    2017-11-26
  • ACL权限实例详解

    CentOS7当中,无论是操作系统安装时还是之后手工创建的文件系统(xfs、ext4)均会开启ACL功能。 CentOS6及之前的版本,仅操作系统安装时创建的文件系统才会默认开启ACL,手工创建的文件系统,需要手工开启ACL 功能。 Acl如何设置 创建分区 mount -o acl /dev/sda7  取消的方式,重新挂载时不指定即可 tune…

    2017-07-29
  • 马哥教育网络班21期+第6周课程练习

    请详细总结vim编辑器的使用并完成以下练习题1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; %s/^([[:space:]]{1,}.*)/#\1/s 2、复制/boot/grub/grub.conf至/tmp目录中,删除/tmp/grub.conf文件中的行…

    Linux干货 2016-08-15