高级文件系统之逻辑卷和btrfs文件系统

逻辑卷管理器快照

逻辑卷可以实现对分区的动态的扩展,快照可以看成是特殊的逻辑卷,它是在生成快照是存在的逻辑卷的准确拷贝。

快照只有在它们和原来的逻辑卷不同时才会消耗空间:

    在生成快照时会分配给他一定的空间,但只有在原来的逻辑卷或者快照有所改变时才会使用这些空间

    当原来的逻辑卷中有所改变时,会将旧的数据写入到快照中

    快照中只含有逻辑卷中更改的数据或者自生成快照后的快照中更改的数据

    建立快照的卷大小只需要原始逻辑卷的15%左右就够了


    注意:由于快照区与原本的lv共有很多PE的区块,因此快照区与被快照的lv必须要在同一个vg上,系统恢复时候文件数量不能高于快照区的实际容量


对逻辑卷进行快照操作

blob.png

先创建vg卷组,然后创建逻辑卷mydata

对创建的逻辑卷mydata创建快照

lvcreate -L 5G -n mydata-snapshot -s -p r /dev/vg0/mydata

    -L 指定快照大小

    -n 指定快照名称

    -s 指明创建快照

    -p r 指明该快照为只读模式

    

通过lvdisplay可以查看快照的具体参数

blob.png


挂载快照

mkdir /mnt/mydata

mount /dev/vg0/mydata /mnt/mydata


卸载快照

umount /mnt/mydata


Btrfs文件系统

    btrfs文件系统在实际的生产生活中,并没有在linux得到应用,但btrfs文件系统在很早的一段时间就已经出来了,主要运用在Oracle数据库上,现在主流的linux的文件系统还是使用的ext4和xfs文件系统

    btrfs文件系统的核心特征:

        多物理卷支持:btrfs可由多个底层物理卷组成,支持raid,以及联机添加,移除,修改等

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

        数据及元数据校验码:checksum 保证了数据的完整性

        支持子卷:sub_volume    

        支持快照:也支持对快照进行快照

        透明压缩,可以对文件进行压缩,提高磁盘空间利用率,但是对用户的使用也不会产生影响

    

创建btrfs文件系统  

 blob.png

    -L 指明创建的btrfs文件系统的名称

        -d 指明data profile

        btrfs filesystem show mydata可以查看当前mydata文件系统的设备情况

     支持透明压缩机制:

        mount -o compress=lzo /dev/sdc /mnt/mydata

     支持在线修改文件大小

        btrfs filesystem resize -L [-|+]10G /dev/sdc(或者挂载点)

        btrfs filesystem resize -L max /mnt/mydata

     可以对文件进行查看,获取使用情况的相关信息

        btrfs filesystem df /mnt/mydata

        blob.png        

     也可以进行添加设备的操作

        btrfs device add /dev/sde /mnt/mydata

        当然除了添加也可以进行移除操作,使用delete选项

blob.png

        同样可以将之前写在两个硬盘上的数据和新添加进来的硬盘进行数据的平衡,是硬盘分摊数据的存储

blob.png

习题

1、创建一个至少有两个PV组成的大小为20G的名为testvg的VG;要求PE大小为16MB, 而后在卷组中创建大小为5G的逻辑卷testlv;挂载至/users目录

blob.png                                             

 

 

2、新建用户archlinux,要求其家目录为/users/archlinux,而后su切换至archlinux用户,复制/etc/pam.d目录至自己的家目录

blob.png

3、扩展testlv至7G,要求archlinux用户的文件不能丢失

blob.png

4、收缩testlv至3G,要求archlinux用户的文件不能丢失

blob.png

5、对testlv创建快照,并尝试基于快照备份数据,验正快照

的功能

blob.png

blob.png

blob.png

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

(0)
Stupid_LStupid_L
上一篇 2016-09-02 08:48
下一篇 2016-09-02 08:48

相关推荐

  • 第十周 Apache服务

    1、Centos7系统下实现httpd-2.2的安装,并分别实现prefork、worker、event等几种工作方式 2、简述request报文请求方法和状态响应码 3、详细描述httpd虚拟主机、站点访问控制、基于用户的访问控制、持久链接等应用配置实例  

    2018-02-09
  • rpm软件管理工具详解

    1 Linux软件安装概述 安装程序的方式: 软件包概述 RPM RPM的缺点 RPM包 RPM分包 RPM命令的使用 rpm 包管理 升级注意项 如何安装rpm软件包 如何卸载rpm软件包 如何升级rpm软件包 如何查询rpm软件包 如何查看与rpm包相关的文件和其他信息 如何校验rpm包 RPM的数据库 1 Linux软件安装概述 安装程序的方式: 通用…

    Linux干货 2016-09-06
  • 浅析linux软、硬链接

    软链接 硬链接 不同点 创建时会占用新的inode号, 不会占用 可以跨分区 不可以跨分区 与源文件是两个不同的文件,不会增加文件链接数 与源文件数据相同,会增加文件链接数 依赖于链接的文件名,当删除或移动源文件后,连接可能失效 不依赖于源文件名,删除或移动源文件后,硬链接依然使用 对文件,目录都可以执行链接操作 只能对文件执行链接操作 大小为指向源文件路径…

    Linux干货 2016-12-05
  • 文本处理工具和shell脚本基本编程

    文本处理工具 grep 对文本进行搜索获取我们想要的行(关键信息) egrep 支持扩展正则表达式的grep fgrep 快速搜索不支持正则    -v 取反  找出不包含“pattern”的行  -i 忽略字符的大小写  -n 显示行号  -c 显示统计到的行数,等同于wc -l  -o…

    2017-04-09
  • shell脚本基础

    编程基础 v程序:指令+数据 v程序编程风格: 过程式:以指令为中心,数据服务于指令(适合小型程序) 对象式:以数据为中心,指令服务于数据(适合大型程序) vshell程序:提供了编程能力,解释执行 程序的执行方式 v计算机:运行二进制指令; v编程语言: 低级:汇编 高级: 编译:高级语言–>编译器–>目标代码 java…

    Linux干货 2016-08-15
  • 磁盘管理的补充及扩展

    磁盘管理的补充及扩展 挂载点和/etc/fstab(配置文件) 使用mount命令挂载为临时挂载开机重启后就会自动卸载,为了永久挂载必须写在配置文件中! 配置文件系统体系  被mount、fsck和其它程序使用  系统重启时保留文件系统体系  可以在设备栏使用文件系统卷标  使用mount  -a 命令挂载/etc/fstab中的所有文件系…

    Linux干货 2016-08-30