首页 > 代码库 > Linux存储管理(3)

Linux存储管理(3)

  之前详细讲述了如何进行磁盘管理,对所创建的磁盘创建文件系统,对其进行逻辑上的编址,主要讲了ext系列的文件系统,今天在这里总结一下,关于当前Linux文件系统中发展较为迅速的btrfs文件系统,btrfs开发目的就是取代ext系列文件系统,成为下一代Linux的标准文件系统;该文件系统目前应用可能还不如ext文件系统,但是其功能十分强大,相信在未来的三五年后,btrfs文件系统的应用一定会越来越广泛;

  btrfs文件系统的特性:

  btrfs具有可扩展性:它可以同时扩展磁盘的逻辑边界和物理边界,而不用逐步进行修改,其inode数量也是可以修改的;

  btrfs文件系统提供多物理卷支持:它可以跨越多个物理设备,动态的增加或减少设备来达到扩容或缩容的目的;

  btrfs文件系统支持写时复制更新机制:即在此文件系统对文件进行写入操作时,将文件复制到一个副本中,对副本进行操作,在完成时,将原先文件的inode指针指向副本即可,这样可以保证数据的一致性,不至于数据丢失;

  btrfs文件系统支持双重校验机制——数据及元数据都有校验码:checksum

  将校验码放在专门存在校验码的树形区域,而不是元数据区,这样,即便元数据丢失,校验码仍会存在;ext系列文件系统的校验码存放在元数据区域,这样如果元数据丢失,则无法找回数据;

  btrfs文件系统支持透明压缩:在存放数据的时候,自动的将数据压缩,在看起来文件没有被压缩,但实际在文件系统中已经被压缩,在读取文件的时候自动解压缩;

  btrfs文件系统还支持快照卷以及子卷的功能;可以说btrfs是在ext文件系统的基础上加强了各种功能设定;

  

  创建btrfs:

  mkfs.btrfs

  选项:

  -L|--label <name:为即将创建的btrfs文件系统指定卷标;

  -d|--date <type>:为数据存储指定类型raid0, raid1, raid5, raid6, raid10 or single

  -m|--metadate <profile>:指定元数据的存储方式,可以选择的类型有:raid0, raid1, raid5,     raid6, raid10, single or dup.

  -O|--features <feature1>[<feature2>]:指定文件系统的特性如果想要查看有哪些特性可以使用命   令:mkfs.btrfs -O list-all

  例

  为指定文件系统设置卷标,并将其数据存储方式设定为raid0

  技术分享

  

  查看文件系统的详细情况:

   技术分享

  查看文件系统的挂载情况:

  技术分享

  修改文件系统的大小:

  btrfs filesystem resize {+|-}size{kK|mM|gG|Tt} 挂载点

  物理边界5G,-1G磁盘空间

  技术分享

  +1G磁盘空间

  技术分享

  扩展磁盘空间物理边界:

  技术分享

  缩减磁盘空间物理边界:

  技术分享

  

  子卷管理:

  子卷类似于ext系统中将其他分区挂载到根目录下的某个空闲子目录的操作;

  btrfs subvolume create /挂载点/子卷名(创建子卷)

  btrfs subvolume delete /挂载点/子卷名(删除子卷)

  btrfs subvolume list -a /挂载点/子卷名(显示所有子卷)

  技术分享


  创建指定子卷的快照卷:

  btrfs subvolume snapshot /挂载点/子卷名(源) /挂载点/快照名(目的)

  技术分享

  技术分享

  磁盘配额:

  磁盘配额是对各个用户所能操作的文件的空间进行限定,控制磁盘容量的流失;

  磁盘配额操作,必须是在该磁盘创建了文件系统的前提下操作,其主要限制的有磁盘空间,即块的数  量,以及inode的数量;磁盘配额的类型有两种,一种是软配额,在用户达到软配额上限时会对用户进  行提醒,将会启动宽限期倒计时;但不会限制用户操作,但到了磁盘配额的另一种类型,硬配额,就  会去限制用户的操作;

  想要为单独的分区或卷制定磁盘配额,就必须为其单独进行挂载;磁盘配额的挂载方式有两种;

 ①直接挂载:

  mount -o usrquota,grpquota 设备 挂载点

 ②通过配置文件/etc/fstab

  device mount_point fstype defaults,usrquota,grpquata 0 0

  两种磁盘配额的挂载方式任选一种;

  usrquota与grpquota指的是为用户进行配额限制与对组进行配额限制;使指定的用户或组在挂载点处存在配额限制,实现资源的有效管理;

  

  在对磁盘进行挂载后,使用命令quotacheck命令去检测配额文件和与配额文件相对应的挂载设备;

  quotacheck:去检测一个文件系统,磁盘使用率,修复磁盘配额文件的工具;

   -v,--ver:显示详细信息

   -u,--user:创建,检测和修复用户配额文件;

   -g,--group:创建,检测和修复配额文件;

   -c,--create:经过检测,如果没有用户配额文件或组配额文件,就安装用户给定选项来进行文件    的创建;

   -a,--all:所有的在/etc/fstab文件中包含了与配额有关的挂载选项的设备,是否有对应选项的    配额文件;

   例:挂载用户配额与组配额信息,使用qutoacheck命令检测配额文件是否存在

   技术分享


   在对配额文件与配额文件相对应的挂载设备进行检测后,便可开始编写配额文件内容,按照需要去   编写用户配额,组配额,去设定其内存空间的软限制与硬限制,inode结点的软限制与硬限制;还 可   以设定在超出软配额限制后的宽限期;

   edquota:

    -u,--user:编写用户配额,默认功能;默认单位kb

    -g,--group:编写组配额;

    -t:设置,超出软配额限制的宽限期,默认为7天,可以选择以秒,分钟,小时,天,月,年等时间单位;

   

    例:对用户配额的编写

    技术分享

    打开用户配额修改界面

    技术分享

    打开软配额限制宽限期

    技术分享

   在对配额编写完毕之后便可以启动磁盘配额功能;

   quotaon命令

   使用方式:

   quotaon 设备

   

   关闭磁盘配额功能:

   quotaoff命令

   使用方式:

   quotaoff 设备


   

   


















Linux存储管理(3)