高级文件系统管理之磁盘配额及RAID的运用

本章内容

设定文件系统配额

设定和管理软RAID设备

一,概述

配置配额系统:

综述

在内核中执行

以文件系统为单位启用

磁盘配额最小单位是以文件系统为单位启用,就是一个挂载点,而不能以目录为单位

对不同组或者用户的策略不同

根据块或者节点进行限制

执行软限制(soft limit)

硬限制(hard limit)

初始化

分区挂载选项:usrquota、grpquota

初始化数据库:quotacheck

为用户设定配额

执行

开启或者取消配额:quotaon、quotaoff

直接编辑配额:edquota username

在shell中直接编辑:

setquota usename 4096 5120 40 50 /foo

blob.png

定义原始标准用户

edquota -p user1 user2

blob.png

报告配额状态

报告

用户调查:quota username

blob.png

配额概述:repquota /mountpoint

blob.png

其它工具:warnquota

blob.png

blob.png

命令执行之后,xinruihl用户如果超过配额,root账户将会给他发送邮件

那么我们现在来实现对home目录的磁盘配额…

第一步我们创建一个分区,并格式化

blob.png

将home目录挂载到新分区的磁盘,并在/etc/fstab配置文件中写入,并且在挂载选项中填写上usrquota(用户配额)和grpquota(组配额)

blob.png

blob.png

这一步我们先重新挂载一下磁盘分区,让磁盘选项生效

blob.png

创建磁盘配额数据库,在centos6上会有默认权限不够,我们将他setenforce 0关闭即可

blob.png

这样数据库我们就创建好了.可以查看一下磁盘配额的状态.如果是关闭,我们启用他

blob.png

现在我们就可以来设置home目录下的磁盘配额了.

blob.png

blob.png

我们来创建一个90M的文件可以看到,已经提示警告

blob.png

现在咱们再来创建一个110M的文件..看看效果.

blob.png

blob.png

blob.png

注意:用echo写内容,如果超过软限制,是不会有警告的

====================================================================================================

什么是RAID:

RAID:Redundant Arrays of Inexpensive(Independent)Disks (廉价冗余磁盘阵列,现在称为独立冗余磁盘阵列)

1988年由加利福尼亚大学伯克利分校(University of California-Berkeley)“A Case for Redundant Arrays of Inexpensive Disks”。

多个磁盘合成一个“阵列”来提供更好的性能、冗余,或者两者都提供

RAID:

提高IO能力:

    通过磁盘并行读写来实现

提高耐用性;

    通过磁盘冗余来实现 

级别:多块磁盘组织在一起的工作方式有所不同

RAID实现的方式:

外接式磁盘阵列:通过扩展卡提供适配能力

内接式RAID:主板集成RAID控制器

Software RAID

硬件级别RAID安装OS前在BIOS里配置

软件RAID:通过OS实现

RAID级别: (没有性能上的高低上下区分,也不是谁比谁更好,仅用于标识磁盘组织形式上的不同)

级别:level 常用的级别0-6,也有7,但是比较不常用

    RAID-0:0,条带卷,strip;

    RAID-1:1,镜像卷,mirror;

    RAID-2:

    …

    RAID-5:

    RAID-6:

    RAID10:

    RAID01:

    

    RAID-0: 

    读写性能提升;

    可用空间:N(硬盘个数)*min(s1,s2,….(就是最小size的,例:第一块硬盘10G,第二块硬盘20G,总共加起来就是10G的raid,第二块硬盘多余的10G没有用))

    无容错能力

    最少磁盘数:2,2+

    

     RAID-1:

        读性能提升,写性能略有下降;

        可用空间:1*min(S1,S2,…)

        有容错能力

        最少磁盘数:2,2+

    

     RAID-4:

        多块数据盘异或运算值,存于专用校验盘


    RAID-5:

        读写性能提升

        可用空间:(N-1)*min(S1,S2,…)

        有容错能力:1块磁盘

        最少磁盘属:3,3+

    

    RAID-6:

         读写性能提升

        可用空间:(N-2)*min(S1,S2,…)

        有容错能力:2快磁盘

        最少磁盘数:4,4+

    

    混合类型:

    RAID-10:

        读写性能提升

        可用空间:N*min(S1,S2,…)/2

        有容错能力: 每组镜像最多只能坏一块

        最少磁盘数:4,4+


    RAID-01:

        

    RAID-50:

        

     RAID-7:某公司独有的raid技术.价格昂贵.

    

    JBOD: Just a Bunch of Disks

        功能:将多块磁盘的空间合并一个大的连续空间使用;

        可用空间:sum(S1,S2,…)

    

    常用级别: RAID-0 ,RAID-1,RAID-5,RAID-10,RAID-50,JBOD

    

        

    实现的方式:

        硬件实现方式

        软件实现方式

    Centos 6上的软件RAID的实现;

        结合内核中的md(multi disks)多磁盘的模块

    

        mdadm:模式化的工具

            命令的语法格式:mdadm [mode] <raiddeice> [options] <component-device>

           支持的RAID级别:LINEAR,RAID0,RAID1,RAID4,RAID5,RAID6,RAID10;

        

        模式:

            创建: -C

            装配: -A

            监控: -F

            管理: -f,-r,-a

        

        <raiddevice>:/dev/md#

        <component-devices>:任意块设备

        

        

        -C:创建模式

            -n #:使用#个块设备来创建此RAID;

            -l #:指明要创建的RAID的级别;

            -a {yes|no}:是否自动创建目标RAID设备的设备文件;

            -c CHUNK_SIZE:指明块大小;

            -x #:指明空闲盘的个数;(没有容错能力的级别指定空闲盘是没有意义的)

            

        -D:显示raid的详细信息:

            mdadm -D /dev/md#

    

        管理模式:

            -f: 标记指定磁盘为损坏;

            -r:移除从盘;

            -a:添加磁盘;


        观察md的状态:

            cat /proc/mdstat


        watch 命令:

            指定命令重复刷新

            -n:刷新间隔,单位为秒;

            watch -n# `COMMAND`

        

        停止md设备:

            mdadm -S /dev/md#


    raid磁盘不能取代备份…

作业及练习:

1:创建一个可用空间为1G的RAID1设备,文件系统为ext4,有一个空闲盘,开机可自动挂载至/backup目录

blob.png

首先做两块1G的硬盘..设置成fd模式.和一块空闲盘.

 blob.png   

接下来就是将两块磁盘做raid1,并有一块空闲磁盘.

blob.png

格式化为ext4文件系统.

blob.png

blob.png

开机自动挂载至/backup目录

2:创建由三块硬盘组成的可用空间为2G的RAID5设备,要求其chunk大小为256k,文件系统为ext4,开机可自动挂载至/mydata目录

blob.png

blob.png

blob.png


blob.png

       

       

模拟损坏:

blob.png

先增加一块备用硬盘

  blob.png

模拟sdd2硬盘损坏之后,备用磁盘自动补充上去 

然后就可以更换硬盘.重新使用新的备份硬盘.保持高校的硬盘使用.

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

(0)
KartikKartik
上一篇 2016-09-07
下一篇 2016-09-07

相关推荐

  • 网络班27期第五周作业

    N27_网络班 第五周作业 1、 显示当前系统上root、fedora或user1用户的默认shell [root@localhost ~]# grep -E ‘^(root|fedora|user1)’ /etc/passwd | cut -d: -f1,7 2、 找出/etc/rc.d/init.d/function文件中某单词后面跟一组小括号的行,形如…

    Linux干货 2017-08-28
  • 关于Linux系统无法启动的问题(1)

                                  &nbsp…

    2017-09-04
  • linux目录管理之整合篇

    目录配置:     1,根目录,所有目录都由根目录衍生出,与开机,还原,系统修复等操作有关。     2,根目录下各子目录应存放的文件。             I,/bin和/sbin目录,/bin放置的是单用户维护模式下能被操作的命令,可以被root和一般…

    Linux干货 2017-05-29
  • Linux文件管理与bash特性

    Linux上的文件管理命令 目录管理命令: mkdir:make directories mkdir [OPTION]… DIRECTORY… -p: 自动按需创建父目录; -v: verbose,显示详细过程; -m MODE:直接给定权限; 注意:路径基名方为命令的作用对象;基名之前的路径必须得存在; r…

    Linux干货 2017-04-01
  • 控制字体颜色的输出echo[转载]

    http://onlyzq.blog.51cto.com/1228/546459 echo显示带颜色,需要使用参数-e格式如下:echo -e "\033[字背景颜色;文字颜色m字符串\033[0m"例如: echo -e "\033[41;37m TonyZhang \033[0m"其中41的位置…

    Linux干货 2017-02-01
  • Java中的CopyOnWrite容器

    Copy-On-Write简称COW,是一种用于程序设计中的优化策略。其基本思路是,从一开始大家都在共享同一个内容,当某个人想要修改这个内容的时候,才会真正把内容Copy出去形成一个新的内容然后再改,这是一种延时懒惰策略。从JDK1.5开始Java并发包里提供了两个使用CopyOnWrite机制实现的并发容器,它们是CopyOnWriteArrayList和…

    Linux干货 2016-08-15