Quota和RAID

高级文件系统管理


磁盘配额 quota

限制用户在某个分区的容量,创建数目的多少!
一般实施在家目录 /home 下来限制用户的占用空间

  • 限制某一群组所能使用的最大磁盘配额  (使用群组限制):

  • 限制某一用户的最大磁盘配额  (使用用户限制):它仅能针对整个文件系统来进行设计,无法针对某个单一的
    目录来设计它的磁盘配额。

  • 限制某一目录  (directory, project)  的最大磁盘配额

  • 只对一般身份使用者有效:

实现磁盘配额(/home目录下)

在下面操作前首先把 /home 目录下的所有文件都要先移出去(用mv 命令 这样不会改变文件的属性),注意此操作最好在单用户模式下进行,不能有普通用户使用的状态下

1、启用配额挂载选项()
vim /etc/fstab  usrquota,grpquota
Quota和RAID
挂载好以后把家目录下的数据移动过来

2、创建配额数据库
quotacheck  -cug /home
setenforce  0 关闭selinux

3、启用数据库
quotaon -p /home 查看是否启用数据库
quotaon  /home 启用数据库

4、配置配额项
edquota qzx
Quota和RAID

  • block 和 inode 下的表示用户原先占有的大小,不要改动

  • soft警告大小 hard 最大数据大小
    edquota  -p qzx mage
    以qzx的配额指定 mage 的配额

setquota tom 100000 150000 0 0 /home
Quota和RAID

5、测试
quota wang
repquota  /home  查看配额的分区表
Quota和RAID

Quota  的使用限制

在  EXT  文件系统家族仅能针对整个 filesystem
核心必须支持  quota  :


RAID

提高IO能力:

  • 磁盘并行读写

提高耐用性;

  • 磁盘冗余来实现

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

RAID实现的方式:

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

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

    • 安装OS前在BIOS里配置

  • Software RAID:

Linux RAID

硬盘设备常见的接口类型:

IDE
SCSI:15000rpm
SATA:6Gbps
SAS:
USB:

SCSI, IDE

RAID:Redundent Array Inexpensive Disks
   廉价冗余磁盘阵列

Independent

性能:将I/O分散至多个设备;
冗余:将同一个数据至少存储在两个硬盘上;

异或运算:
    1 1 0  
    0 1 1

RAID Level: 仅用于表明其组合方式的不同

raid0 --------- 条带式
raid0:把数据块平均分到各个硬盘上去,个存了一半,提供了扩展能力,耐用性下降,不适合于存储单个数据,当swap,当临时文件系统,缓存系统,安全性不大的问题
    读、写均有提升;
    无冗余能力;
    n块硬盘空间提升n倍;
    至少两块

raid1 -------------复制每一份
raid1:数据块在每一个硬盘上都要存一份,如果是2块硬盘,都是一样的
    写性能略有下降,读性能提升;
    有冗余能力;
    可空间:1*min disk;(取决于最小的那块硬盘)
    至少两块

Quota和RAID

raid4:将三块以上的硬盘, 组成一个raid,其中有一块盘做校验码的存储,当有数据块存储时,数据平均分散到前两块硬盘上,最后一块存校验码(异或值),万一第二块数据坏了,可用另一个做异或运算算出来!!坏了后就会降级运行!
    单块盘做校验,工作压力较大,很容易出现性能瓶颈!!
有可能有四快盘,最后一个叫热备盘
    读、写性能提升;
    有冗余能力,但至多坏一块盘;
    空间:(n-1)*disk;
    至少三块盘;

raid5:相对于4,校验轮流存储,第一块数据存第一块盘上,第二块数据存第二块盘上,校验存第三块盘上,第三块数据存第二快盘,第四快数据存第三块盘,校验存在第一块盘中 。。。数据会出现左对称\或右对称/,一般都是做对称 \
    比起Raid4而言,无专门校验盘;
    读、写性能提升;
    有冗余能力,但至多一块盘;
    空间:(n-1)*mindisk;
    至少三块盘;

raid6:两块盘做校验盘,校验码存两次(很少用)
    有两个校验盘,至多允许同时损坏两块磁盘;
    读、写性能提升;
    有冗余能力;允许坏两块 
    空间:(n-2)*mindisk;
    至少四块盘;

raid10,01:一般用raid10  两两一组做成raid1 后做成raid0
        至少需要四个盘;
    至多允许同时损坏半数的磁盘,但同一组镜像中两个磁盘不能同时损坏;
    读、写性能提升;
    有较好的冗余能力;
    n/2*disk;

raid50:
    至少需要6个盘;
    同组raid5不允许同时坏两个盘,但不同组可同时各坏一个;
    读、写性能提升;
    有冗余能力;空间:

JBOD:将多块硬盘串联在一起,当一个设备使用;

实现方式:

硬件raid
软件raid
    软件raid不常用!
md: multi disks

mdadm:管理software RAID; 
    模式化的命令:

    -A:装配模式
    -C:创建模式
    -F:监控模式

    管理模式:-f, -r, a

    -D:显示指定RAID设备的详细信息;

    -C:创建模式专用选项
        -n #: 用于创建RAID设备的磁盘设备的个数;
        -l #: 指明RAID级别;
        -a yes|no: 是否为正在创建的raid设备自动创建设备文件;
        -c Chunk_Size:指明CHUNK大小;
        -x #: 对于有冗余能力的RAID级别,此选项为其指定可用的空闲盘的个数;

        md设备的设备文件默认为/dev/md#: #仅设备编号,而与级别无关;

        设备状态信息输出:/proc/mdstat

        示例:示例:创建一个大小为10G的RAID5;
            创建时要用fdisk  -t 调成fd  Linux raid auto
mdadm -C /dev/md0 -a yes -n 3 -x 1 -l 5 /dev/sda{7,8,9,10}
    cat /proc/mdstat

    blkid /dev/md0 查看UUID等信息
    mdadm -D 查看更详细的信息

    recovery 对齐
    注意:不应该使用同一个磁盘上的多个分区创建raid设备;
    标记某个为损坏 mdadm /dev/md0 -f/dev/sda7
watch -n1 'cat /proc/mdstat'    
mdadm /dev/md0 -r /dev/sda7  ---移除一块硬盘
mdadm /dev/md0 -a /dev/sda7  ----添加sda7

管理命令的使用:

mdadm -D /dev/md#:查看指定设备的详细信息

mdadm -a /dev/md# /dev/DEVICE: 在指定的md设备添加一个块设备;

mdadm -r /dev/md# /dev/DEVICE: 在指定的md设备上移除一个块设备;

mdadm -f /dev/md# /dev/DEVICE: 手动标记指定md设备上的某块设备为faulty状态;

停止软RAID:
mdadm -S /dev/md#:停止指定的RAID设备;将来使用时需要“装配(-A)”; 

重新装配指定的软RAID:
mdadm -A /dev/md# /dev/DEVICES

可能会读取配置文件:/etc/mdam.conf

watch命令的用法:

watch [-n #] 'COMMAND'
交互式查看,周期性地执行指定的COMMAND;

- -n # : 指明间隔时长;

练习:

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

    1、fdisk t fd
    创建4个分区,并用t选项更改每个分区的卷标为fd raid分区

    2、创建raid设备 
    mdadm -C /dev/md0 -a yes -l 5  -n 3 -x1 /dev/sdd{1,2,3,4}
    mdadm -D /dev/md0   查看是否挂载成功
    cat /proc/mdstat

    3、mkfs.ext4 /dev/md0  格式化分区
    4、vim /etc/fstab 改配置文件以下面的把磁盘挂在上
    UUID="3bcbcca9-1e9e-40fb-9d23-b7f4c6a720e9"  /mnt/raid          ext4 defaults   0       0
    用 mount -a 重读分区表


    5、mdadm  -Ds /dev/md0 > /etc/mdadm.conf 生成配置文件
    mdadm -A /dev/md0 启动raid

    6、测试
    mdadm /dev/md0 -f /dev/sdd1 模拟损坏
    mdadm /dev/md0 -r /dev/sdd1 删除成员
    mdadm /dev/md0 -a /dev/sdd1 增加
    mdadm -G /dev/md0 -n 6 -a /dev/sdd4 增加成员

    7、删除raid
    umount /mnt/raid
    mdadm -S /dev/md0 停止raid
    rm -f /etc/mdadm.conf
    vi /etc/fstab
    fdisk /dev/sda

    8、如果还是清楚不干净
    mdadm --zero-superblock /dev/sdd1

注意:有冗余能力的RAID仅是为了避免因硬件损坏而导致业务中止,也能避免因硬件损坏而导致数据丢失;它不能取代备份的功能;

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

(0)
qzxqzx
上一篇 2016-09-01
下一篇 2016-09-01

相关推荐

  • llinux常用命令及bash基本特性

    一、常用的文件和目录管理命令 1. pwd命令:用来显示当前的工作目录 语法格式:直接输入pwd回车显示当前的工作目录 示例:用pwd命令显示当前的工作目录 [root@suyiwen ~]# pwd /root 2. mkdir命令:用来创建目录文件 语法格式:mkdir [OPTION]… DIRECTORY…常用option: -m,用来指定目录的权限…

    Linux干货 2018-03-11
  • N22-第十周作业

    1、请详细描述CentOS系统的启动流程(详细到每个过程系统做了哪些事情) (1)POST:加电自检,利用COMS里记录的配置信息检测硬件是否都工作正常 (2)Boot Sequence: 按次序查找各引导设备,第一个有引导程序的设备即为本次启动要用到的设备 Grub引导程序:提供一个菜单,允许用户选择要启动的系统或不同的内核版本, 把用户选定的内…

    Linux干货 2016-10-25
  • Linux基础之正则表达式

    正则表示式语法及在grep命令中的引用

    2017-09-09
  • 网络接口bonding的设置、网卡别名的设置

    网络接口bonding的设置、网卡别名的设置 网络接口bonding的设置 1.bonding的原理 Bonding就是将多块网卡绑定同一IP 地址对外提供服务,可以实现高可用或者负载均衡。当然,直接给两块网卡设置同一IP 地址是不可能的。通过bonding ,虚拟一块网卡对外提供连接,物理网卡的被修改为相同的MAC 地址。 2.Bonding 的工作模式 …

    Linux干货 2016-09-05
  • 马哥教育21期网络班—第二周课程+练习

    目录管理类命令: mkdir, rmdir, tree mkdir mkdir [options] /path/to/somewhere -p: 存在于不报错,且可自动创建所需的各目录; -v: 显示详细信息 -m MODE: 创建目录时直接指定权限; tree tree:  需要安装  yum -y install …

    Linux干货 2016-06-29
  • N26-第三周博客作业

    1、  列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 命令:who | cut -d' ' -f1 | sort –u 涉及知识点: l  who命令 作用:查看当前所有的登录会话 l  cut命令 作用:将文本内容按照指定内容分割,然后取出指定字段。 常用选项: &…

    Linux干货 2017-02-10

评论列表(1条)

  • 马哥教育
    马哥教育 2016-09-01 10:25

    文章对raid的各个级别工作方式整理的较为完整,通过图片清晰的展示了各个级别的工作模式,生成环境中一般软raid的不用,但是面试中常常需要我们能讲清楚他们之间的关系。