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 12:20
下一篇 2016-08-31 17:04

相关推荐

  • vim简单总结

    编辑器种类 常用的文本编辑器有: 行编辑器,如sed,awk,cut等 全屏编辑器,如vi,vim(vi增强版),nano等 vim的模式 命令模式:使用vim filename打开文件后,进入的第一个模式。 直接使用键盘操作文本的编辑 插入模式:INSERT模式 进入:i,从当前光标处开始 进入:I,从当前行行首开始 末行模式:vim内置命令接口。 以:开…

    Linux干货 2016-08-18
  • 8月3号 用户权限作业

     1,当用户xiaoming 对/testdir  目录无执行权限时,意味着无法做哪些操作?   先创建目录/testdir,接着修改目录的/testdir的权限,用xiaoming的身份去进入/testdir目录 [root@localhost ~]# mkdir /testdir [root@l…

    Linux干货 2016-08-08
  • vim实用技能

    vim编辑器 简介 vi: Visual Interface,文本编辑器 文本:ASCII, Unicode 文本编辑种类: 行编辑器: sed 全屏编辑器:nano, vi VIM – Vi IMproved 使用 vim:模式化的编辑 基本模式: 编辑模式,命令模式 输入模式 末行模式: 内置的命令行接口 打开文件: # vim [OPTIO…

    Linux干货 2018-01-16
  • varnish原理及配置事例

    Varnish是一款高性能的开源HTTP加速器(其实就是带缓存的反向代理服务),可以把http响应内容缓存到内存或文件中,从而提高web服务器响应速度。与传统的 squid 相比,varnish 具有性能更高、速度更快、管理更加方便等诸多优点,很多大型的网站都开始尝试使用 varnish 来替换 squid,这些都促进 varnish 迅速发展起来 Varn…

    Linux干货 2015-12-06
  • linux shell 脚本详解

    . Linux  shell 脚本编写基础◆1.1 语法基本介绍1.1.1 开头程序必须以下面的行开始(必须方在文件的第一行):#!/bin/sh符号#!用来告诉系统它后面的参数是用来执行该文件的程序。在这个例子中我们使用/bin/sh来执行程序。当编辑好脚本时,如果要执行该脚本,还必须使其可执行。要使脚本可执行:编译 chmod +x filen…

    2017-08-05
  • Bash Shell编程初学基础篇之二

    Bash Shell编程初学基础篇之二    时间如白驹过隙,一晃过去了几周,一切的计划都没有变化快。当你制定计划实施时,在这期间却会发生许多打乱我们计划的事情,但是我们还是要坚持下去,胜利是属于坚持到最后的人!实践出真理,中级基本结束了,需要回过头了好好总结一下了。心中总有好多话想找个同行唠唠;不废话了,估计大家都烦了!总有一天,你会成…

    Linux干货 2015-05-11

评论列表(1条)

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

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