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

相关推荐

  • VSFTP通过pam_mysql插件创建进行基于mysql的虚拟用户

      1、对pam_mysql-0.7RC1包进行编译安装 编译安装环境配置 编译安装所需的包如下: ~]#yum -y groupinstall "Development Tools" "Server Platform Development" ~]#yum -y install mariadb-server…

    Linux干货 2016-11-14
  • 聊聊CentOS6的启动过程

    前言:     作为一个合格的运维人员,系统的启动过程我们需要牢记在心,此文不深入探讨,只求大致理解CentOS6的启动过程。 一张图带你了解CentOS6的启动过程 注意:图片放大查看效果更佳 上图各阶段详解 POST:计算机开机时BIOS对其各硬件的简单测试,测试各硬件的完整性 BootSqunce:加电自检后根据…

    Linux干货 2016-03-14
  • 加密通讯过程

    一次加密通讯的过程 1、client_hello   客户端发起请求,以明文传输请求信息,包含版本信息,加密套件候选列表,压缩算法候选列表,随机数,扩展字段等信息,相关信息如下: 支持的最高TSL协议版本version,从低到高依次 SSLv2 SSLv3 TLSv1 TLSv1.1 TLSv1.2,当前基本不再使用低于 TLSv1 的版本 客户端支持的加密…

    Linux干货 2017-02-07
  • linux运维

    linux运维大纲,学习路线图

    Linux干货 2017-10-21
  • Linux文件系统及文件管理相关命令

    一、Linux文件系统介绍: Linux文件系统叫做根文件系统(rootfs): root filesystem。文件系统从根目录下开始,用“ /”表示。文件和目录被组织成一个单根倒置树结构。文件系统分层遵循FHS(Filesystem Hierarchy Stantartd)。标准的Linux文件系统,文件名严格区分大小写。使用“/”分割路径。 …

    Linux干货 2016-07-29
  • 第十八周作业

    1、为LNMP架构添加memcached支持,并完成对缓存效果的测试报告; 环境准备: 1)LNMP(php-fpm)环境已搭建完毕 2)Wordpress已部署完成 1.在memcache服务器上安装memcached包并启动服务 ]# yum install memcached -y ]# systemctl start memcached.servic…

    2017-06-22

评论列表(1条)

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

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