高级文件文件系统管理之btrfs系统

一.概述

btrfs文件系统:

    技术预览版

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

    ext3/ext4,xfs

核心特性:

    多物理卷支持: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;

属性查看:

    btrfs filesystem show

挂载文件系统:

    mount -t btrfs /dev/sdb MOUNT_POINT

透明压缩机制:

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

首先我们创建一个40G的btrfs文件系统.成员为/dev/sdd和/dev/sde

-f 是强制覆盖源磁盘的文件系统

blob.png

我们可以使用命令 btrfs filesystem show 来查看所有的btrfs文件系统的属性

blob.png

btrfs filesystem show –mounted  显示已挂载btrfs文件系统的属性

btrfs filesystem show all-devices 显示所有btrfs文件系统的属性

现在我们来挂载btrfs文件系统到目录

blob.png

mydate的btrfs文件系统包含/dev/sdd和sde,所以这边可以随便写哪个硬盘设备都等同于mydate的btrfs文件系统

实现透明压缩文件机制:

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

blob.png

compress是选择一个压缩加密方式.

现在我们还可以自由调整文件系统的大小.

man btrfs

btrfs filesystem resize -10G /mydata  减少10G

blob.png

blob.png

btrfs filesystem resize +5G /mydata    增加5G

blob.png

btrfs filesystem resize max /mydata    增加空间到最大

blob.png

查看

df–lh; btrfsfilesytemdf/mydata

blob.png

添加设备:man btrfs-device

btrfs device add /dev/sdd /mydata

blob.png

btrfs filesystem show mydata;df

blob.png

平衡数据:

man btrfs-banlance

btrfs banlance status /mydata

blob.png

btrfs banlance start /mydata

blob.png

btrfs banlance pause /mydata

btrfs banlance cancel /mydata

btrfs banlance resume /mydata

删除设备

btrfs device delete /dev/sdb /mydata

btrfs filesystem show

blob.png

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

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

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

blob.png

blob.png

子卷管理:

man btrfs-subvolume

btrfs subvolumelist /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

blob.png

创建了2个子卷

blob.png

将2个子卷挂载到目录上..

blob.png

 

        

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

(0)
KartikKartik
上一篇 2016-09-11 20:23
下一篇 2016-09-11 20:56

相关推荐

  • vim文本编辑器

    vim简介: vi: Visual Interface,文本编辑器 文本:ASCII, Unicode 文本编辑种类: 行编辑器: sed 全屏编辑器:nano, vi vim – Vi Improved 其他编辑器: gedit一个简单的图形编辑器 gvim一个Vim 编辑器的图形版本   vim使用: 三种主要模式: 命令(Norm…

    Linux干货 2017-06-17
  • 第一周博客作业

    1、描述计算机的组成及其功能。
    2、按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别。
    3、描述Linux的哲学思想,并按照自己的理解对其进行解释性描述。
    4、说明Linux系统上命令的使用格式;详细介绍ifconfig、echo、tty、startx、export、pwd、history、shutdown、poweroff、reboot、hwclock、date命令的使用,并配合相应的示例来阐述。
    5、如何在Linux系统上获取命令的帮助信息,请详细列出,并描述man文档的章节是如何划分的。
    6、请罗列Linux发行版的基础目录名称命名法则及功用规定

    Linux干货 2018-03-13
  • 启动流程排错,自制linux内核,编译内核

    CentOS 6启动流程: POST –> Boot Sequence(BIOS) –> Boot Loader –> Kernel(ramdisk) –> rootfs–> switchroot–> /sbin/init–>(/et…

    Linux干货 2016-09-20
  • ansible

    Ansible 1、  特性: 模块化:调用特定的模块,完成特定任务; 基于Python语言实现部署简单:agentless; 支持自定义模块; 支持playbook;编排任务; ansible自身并不实现任何管理任务,它的所有管理任务,统统都使用模块完成;             &nb…

    Linux干货 2016-11-11
  • 马哥教育网络班22期+第5周课程练习

    1、显示当前系统上root、fedora或user1用户的默认shell;cat /etc/passwd | grep "^\<root\>"cat /etc/passwd | grep "^\<fedora\>"cat /etc/passwd | grep "^\<user1\…

    Linux干货 2016-09-19
  • Linux学习之课前环境安装调试

    系统安装,VNC,VMware软件安装

    2018-03-26