zoukankan      html  css  js  c++  java
  • CentOS7.4-btrfs管理及使用

    btrfs, B-tree File System, GPL开源文件系统, 支持CoW即读时写入.

    核心特性:

    1. 多物理卷支持;
      • btrfs可由多个底层磁盘组成
    2. 支持RAID
      • mkfs.btrfs 命令的man文档支持: raid0, raid1, raid5, raid6,raid10, single or dup
    3. 联机"添加, 移除, 修改"
    4. CoW写时复制更新机制
      • 对文件做更改时, 先复制一份, 而后对复制过的文件做更改并且替换指针, 而非就地更新
      • btrfs-CoW
    5. 数据及元数据校验码: checksum*
    6. 子卷: sub_volume
    7. 快照: 支持快照的快照
    8. 透明压缩

    创建文件系统: mkfs.btrfs

    • 卷创建:
      • mkfs.btrfs [options] <device> [<device>...]
        • -L ‘Label’ : 设置卷标
        • -d <data-profile> : raid0,raid1,raid5,raid6,raid10, single, dup
        • -m<metadata-profile>: raid0,raid1,raid5,raid6,raid10, single, dup
        • -O<feature>
          • -O list-all: 列出所有支持的feature
    • 属性查看:
      • btrfs filesystem show //此处命令在下面的btrfs中有
        • 列出当前文件系统中的btrfs,并显示信息
        • 加上<DEVICE>将显示指定信息
    • 挂载:
      • mount [–t btrfs] /dev/sdb MOUNT_POINT
        • -t可选可不选
        • 以 /dev/sdb 做btrfs系统示例
    • 透明压缩机制:
      • 解释: 在写入时自动压缩, 读取时自动解压; [un]compress过程对用户隐藏;
      • mount -o compress={ lzo|zlib } DEVICE MOUNT_POINT
                     lzo,  zlib压缩机制
    • btrfs命令, 以及其子命令, 子子命令:
      1. btrfs filesystem
        1. show: 查看所有btrfs系统信息
        2. df <MOUNT_POINT>: 查看已挂载 *具体空间使用情况*
        3. resize<MOUNT_POINT>: 联机/在线更改大小
          • 减小容量 修改有风险, 操作需谨慎
      2. btrfs device
        1. btrfs device add <NEW_DEVCIE> <MOUNT_POINT>添加一个磁盘到挂载点
        2. btrfs device delete <OLD_DEVCIE> <MOUNT_POINT>删除一个磁盘到挂载点
      3. btrfs-balance 均衡负载
        1. btrfs balance start <MOUNT_POINT> 开始均衡负载过程
          • state 查看均衡进度
          • pause 暂停
          • resume 继续
          • cancel 取消
            • 负载均衡将会消耗很大一部分的系统性能, 仅建议在不忙时操作; 可使用pause暂停;
        2. btrfs balance start -mconvert=<profile> <MOUNT_POINT> 修改raid级别
          • <profile>: raid0, raid1, raid10, raid5, raid6, dup,single
          • -dconvert//数据区 data blocks
          • -mconvert//元数据区 metadata chunks
          • -sconvert//系统区 system chunks (requires -f)
      4. btrfs-subvolume 子卷
        • 挂载子卷:
          • mount -o subvol=' ' /dev/DEVICE MOUNT_POIN
            • #先查看待挂载的subvolume的id
              • # btrfs subvolume list /mnt/btrf
              • ID 256 gen 9 top level 5 path su
              • 或者通过路径挂载也可以
        • list: 显示所有子卷
        • create:创建子卷
        • delete:删除子卷
          • 注意:delete子卷不会真正删除物理卷上的数据, 如需要可使用-c
        • snapshot
          • btrfs subvolume snapshot /MOUNT_POINT/SUB  /MOUNT_POINT/SUB_snapsho
      5. btrfs-convert 转换其他格式到btrfs
        • btrfs-convert </dev/DEVICE>: 转换其他fs到btrfs
          • -r 回滚到原来的fs
      6. 命令注意:
        • btrfs命令仅对挂载后的挂载点生效, 直接操作/dev/sd[a-z]不可行

    btrfs子命令: filesystem, device, balance, subvolume, convert

  • 相关阅读:
    读懂Netty的高性能架构之道
    大型网站架构演变和知识体系(转载)
    SAX,功能强大的 API
    防雪崩利器:熔断器 Hystrix 的原理与使用
    分布式系统设计系列 -- 基本原理及高可用策略
    分布式系统的事务处理
    分布式服务框架之服务化最佳实践
    深入理解 Java 虚拟机:JVM 高级特性与最佳实践
    内存屏障
    IntelliJ IDEA 2016 破解旗舰版
  • 原文地址:https://www.cnblogs.com/gettolive/p/8824846.html
Copyright © 2011-2022 走看看