centos7文件系统管理btrfs详解Btrfs文件系统




centos7文件系统管理btrfs详解Btrfs文件系统

2022-07-20 21:03:38 网络知识 官方管理员

一、基础简介

Btrfs(又名:B-tree,ButterFS,BetterFS),GPL授权,Oracle从2007研发,写实复制更新机制CoW,其主要是为了取代ext2,ext3,ext4,其主要功能有

例如我们现在去修改一个文件A,COW机制是先将目标文件A复制一份为文件B,那么我们修改文件时是修改的复制文件B,相当于对源文件A做了快照,如对文件B修改操作失误,可以有效的恢复源文件A。

多物理卷支持:btrfs可由多个底层物理卷组成,内建支持RAID(即支持条带、mirror等功能),以联机添加、移除,修改操作

支持b-tree文件功能即支持子卷功能,如在vg中创建lv一样

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

数据及源数据校验码机制checksum:我们存储某个文件时,checksum会将数据的源数据和数据的校验码,分别通过文件的属性扩展进行保存,当我们再次读取数据时可以方便的检测数据是否受损,如果文件受损系统可以完成自动修复。

支持子卷sub_volume:可以在一个卷上创建子卷,然后分别挂载使用

快照:支持快照的快照功能即增量快照

透明压缩:即数据自动实现压缩和解压缩,以节约空间,会消耗一定的cpu的

二、文件系统创建

命令帮助btrfs--help

mkfs.btrfs

-L'LABEL'指定卷标

-d<type>:raid0,raid1,raid5,raid6,raid10,single指明数据存储类型

-m<profile>:raid0,raid1,raid5,raid6,raid10,single,dup指明源数据存储的机制

-O<feature>指明在格式化时使用的特性

-Olist-all:列出支持的所有feature

manbtrfs-filesystem查看更多的子命令

mount-tbtrfs/dev/sdbMOUNT_POINT挂载文件系统

mount-ocompress={lzo|zlib}DEVICEMOUNT_POINT透明压缩机制

btrfsfilesystemresize±VALUEMOUNT_POINT调整磁盘大小

btrfsdevices[subcommand]args管理磁盘设备

btrfs-balancesubcomand|args均衡数据

btrfssubvolume[subcommand][args]创建子卷

btrfssnapshot创建快照

快照必须要与原卷在同一卷组中,子卷的快照必须要与子卷在同一个父卷中

btrfssubvolumedeletesnapshot-name删除子快照

三、创建应用示例

#fdisk-l查看存在的分区的磁盘

#mkfs.btrfs-L"mybtrfs"/dev/sdb/dev/sdc将sdb、sdc磁盘创建成为一个btrfs系统

#btrfsfilesystemshow查看已经创建的btrfs文件系统

#blid/dev/sdb查看UUID是相同的(说明其实属于同一个卷的)

#mkdir/mybtrfs创建挂载点

#mount-tbtrfs/dev/sda(挂载点是/dev/sda也是可以的)

#umount/dev/sda卸载

#mount-ocompress=lzo/dev/sdb/mybtrs重新使用,此时就是自动压缩(透明压缩)

#btrfsfilesystemresize-10G/mybtrfs

(btrfsfilesystemresize调整磁盘大小)

#btrfsdevicesadd/dev/sdd/mybtrfs自动磁盘扩展逻辑边界

#manbtrfs-balancestart/mytrfs

#btrfs-lalancestart-mconvert=raid1/mytrfs修改元数据的raid级别

#btrfsbalancestatus/mytrfs

#btrfsdevicedelete/dev/sda/mybtrfs拆除设备,系统会自动移动数据

#btrfssublimvolumecreate/mybtrfs创建子卷

#btrfssubvolumecreate/mybtrfs/logs创建logs子卷

umount/mybtrfs

mount/dev/sdb/mybtrfs可以卸载父卷,只挂着子卷

btrfssubvolumelist/mybtrfs显示mybtrs


发表评论:

最近发表
网站分类
标签列表