搜索
首页系统教程LINUX深入解析centos7的btrfs文件系统管理
深入解析centos7的btrfs文件系统管理Dec 31, 2023 am 09:46 AM
centos7btrfs

一、基础简介

Btrfs(又名:B-tree, Butter FS, Better FS),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 : raid0,raid1, raid5, raid6, raid10, single   指明数据存储类型

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

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

-O list-all: 列出支持的所有feature

man btrfs-filesystem查看更多的子命令

mount -t btrfs /dev/sdbMOUNT_POINT 挂载文件系统

mount -o compress={lzo|zlib} DEVICE MOUNT_POINT 透明压缩机制

btrfs filesystem resize ±VALUE  MOUNT_POINT 调整磁盘大小

btrfs devices [subcommand] args 管理磁盘设备

 btrfs-balance subcomand|args 均衡数据

btrfs subvolume [subcommand][args] 创建子卷

btrfs snapshot 创建快照

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

btrfs subvolume delete  snapshot-name 删除子快照

三、创建应用示例

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

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

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

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

# mkdir  /mybtrfs 创建挂载点

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

# umount /dev/sda 卸载

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

#btrfs filesystem resize -10G /mybtrfs

(btrfs filesystem resize调整磁盘大小)

# btrfs devices add /dev/sdd /mybtrfs 自动磁盘扩展逻辑边界

# man btrfs-balance start /mytrfs

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

# btrfs balance status /mytrfs

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

# btrfs sublimvolume create /mybtrfs   创建子卷

# btrfs subvolume create /mybtrfs/logs 创建logs子卷

umount /mybtrfs      

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

btrfs subvolume list /mybtrfs 显示mybtrs

以上是深入解析centos7的btrfs文件系统管理的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文转载于:脚本之家。如有侵权,请联系admin@php.cn删除
CentOS7怎么安装Mysql并设置开机自启动CentOS7怎么安装Mysql并设置开机自启动Jun 02, 2023 pm 08:36 PM

centos7不带mysql数据库了,默认的数据库是mariadb(mysql的一个分支)。可以按照以下步骤手动安装mysql数据库。1.下载rpm安装文件wgethttp://repo.mysql.com/mysql-community-release-el7.rpm2.执行rpm安装rpm-ivhmysql-community-release-el7.rpm依赖解析完成后,出现下列选项:dependenciesresolved=================================

centos7怎么查看php安装目录?三种方法分享centos7怎么查看php安装目录?三种方法分享Mar 22, 2023 am 10:38 AM

如果你正在使用 CentOS 7 操作系统,需要查看 PHP 安装目录以便定位配置文件、扩展等相关信息,那么就需要了解一些相关命令和技巧。下面,我们将为您介绍一些方法来查看 CentOS 7 上的 PHP 安装目录。

怎么在CentOS7中使用Nginx和PHP7-FPM安装Nextcloud怎么在CentOS7中使用Nginx和PHP7-FPM安装NextcloudMay 24, 2023 pm 08:13 PM

先决条件64位的centos7服务器的root权限步骤1-在centos7中安装nginx和php7-fpm在开始安装nginx和php7-fpm之前,我们还学要先添加epel包的仓库源。使用如下命令:yum-yinstallepel-release现在开始从epel仓库来安装nginx:yum-yinstallnginx然后我们还需要为php7-fpm添加另外一个仓库。互联网中有很个远程仓库提供了php7系列包,我在这里使用的是webtatic。添加php7-fpmwebtatic仓库:rpm

CentOS7如何安装Nginx并配置自动启动CentOS7如何安装Nginx并配置自动启动May 14, 2023 pm 03:01 PM

1、官网下载安装包选择适合linux的版本,这里选择最新的版本,下载到本地后上传到服务器或者centos下直接wget命令下载。切换到/usr/local目录,下载软件包#cd/usr/local#wgethttp://nginx.org/download/nginx-1.11.5.tar.gz2、安装nginx先执行以下命令,安装nginx依赖库,如果缺少依赖库,可能会安装失败,具体可以参考文章后面的错误提示信息。#yuminstallgcc-c++#yuminstallpcre#yumins

CentOS7下怎么部署php7.1和开启MySQL扩展CentOS7下怎么部署php7.1和开启MySQL扩展May 28, 2023 pm 03:01 PM

简单安装(yum方式)安装软件源添加epel源[root@opstrip.comopt]#rpm--import/etc/pki/rpm-gpg/rpm-gpg-key*[root@opstrip.comopt]#rpm-uvhhttp://mirrors.rit.edu/fedora/epel//7/x86_64/e/epel-release-7-9.noarch.rpm添加remi源[root@opstrip.comopt]#rpm-uvhhttp://rpms.remirepo.net/e

如何在 CentOS 7 中安装并配置 Java 环境变量?如何在 CentOS 7 中安装并配置 Java 环境变量?Apr 22, 2023 pm 04:28 PM

安装环境:Centos764位Jdk1.864位Xshell免费版win10*64位一、先进来,你需要检查自己的openjdk是否卸载(或者判断是否存在,因为一般centos都会预装openjdk):在xshell或rpm-qa|grepjdk中输入rpm-qa|grepjavarpm-qa|grepjava第二,如果有一个对应的openjdk,并且显示了一个响应列表,那么就需要卸载它。在xshell中输入rpm-e-nodepstzdata-文件名(这个文件名是你查看的openjdk文件列表中

Centos7改系统时区方法有哪些Centos7改系统时区方法有哪些Mar 03, 2023 am 10:47 AM

Centos7修改系统时区的两种方法:1、使用timedatectl命令,可设定和修改时区信息,语法“timedatectl set-timezone 时区标识”;2、修改用户目录下的“.bash_profile”文件,在文件末尾追加“TZ='时区标识'; export TZ”即可。

centos7使用rpm安装mysql5.7的方法centos7使用rpm安装mysql5.7的方法May 27, 2023 am 08:05 AM

1.下载4个rpm包mysql-community-client-5.7.26-1.el7.x86_64.rpmmysql-community-common-5.7.26-1.el7.x86_64.rpmmysql-community-libs-5.7.26-1.el7.x86_64.rpmmysql-community-server-5.7.26-1.el7.x86_64.rpm想要用迅雷进行下载得先找到对应的rpm下载路径首先浏览器打开mysql官网:在打开的界面,按键盘f12打开开发者工具

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前By尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
4 周前By尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具