配额-and-RAID

配置配额系统

控制单个用户,或组在某磁盘上所能占的最大空间大小

配额是基于磁盘分区的,不基于文件

如何基于软件控制配额:

         1、设置分区挂载选项

                 修改/etc/fstab中挂载选项,在default后加:usrquota 、grpquota

                 usrquota:控制单个用户的空间

                 grpquota:控制组的空间

        

         2、初始化数据库

                 quotacheck -cug /home

                         -c:创建

                         -u:控制用户

                         -g:控制组

        

         3、开启或取消配额

            quotaon、quotaoff

        

         4、编辑配额

            edquota

                         在shell中直接编辑

                             soft:警告线

                             hard:强制的红线,不能超过此大小

                        

                         选项:

                         -p USER1 USER2 :参考usre1设置user2的配额

                            eg:edquota -p user1 user2

                        

        setquota usename 4096 5120 40 50 /DIR

                      设置某目录下的username用户的block和inode的soft和hard线

        

         5、报告配额状态

                 用户调查:quota

                 配额概述:repquota

                 其它工具:warnquota

RAID:Redundant Array of Inexpensive(Independent) Disks

作用:

提供IO能力

    磁盘并行读写

提高耐用性

    磁盘冗余来实验

级别:多块磁盘组织在一起的工作方式不同;无等级之分

RAID实现的方式:(RAID存储中的块是chunk)

         外接式RAID:通过扩展卡提供适配能力

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

         Software RAID:通过软件实现

级别:level

RAID-0:0 ,条带卷 ,strip

         读写性能提升

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

         无容错能力

         最少磁盘数:2 ,2+

RAID-1:1 ,镜像卷 ,mirror

         读性能提升,写性能下降

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

         有容错能力

         最少磁盘数:2 ,2+

RAID-2 … RAID3 :基本淘汰

RAID-4:

         把最后一块盘作校验盘,用与异或校验

                 如:1101

                    0110

                 异或1011

         上面3个数,两两异或都可以得到另一个

        4.png

         损坏一块磁盘可以通过异或校验获得

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

         最少磁盘数:3 ,3+

RAID-5:代奇偶校验位的条带机

         读写性能提升

         在RAID4的基础上,把校验块数据不全放在一块磁盘上

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

         有容错能力:1块磁盘

         最少磁盘数:3 ,3+

111.png

RAID-6:

         读写性能提升

         在RAID5的基础上,校验块数据不全放在一块磁盘上,且同一段数据有2个校验块

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

         有容错能力:2块磁盘

         最少磁盘数:4 ,4+

RAID7:

      可以理解为一个独立存储计算机,自身带有操作系统和管理工具,可以独立运行,理论上性能最高的RAID

JBOD :Just a Bunch Of Disks

      功能:将多块磁盘的空间合并一个大的连续空间使用可用空间:sum(S1,S2,…)

混合类型:

RAID-10:(先底层1,上层0)

         读写性能提升

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

         有容错能力:每组镜像最多可以坏1块

         最少磁盘数:4 ,4+

RAID-01:(先底层0,上层1)

         因先复制后切块,不同0中可能切块标准不同

         RAID-01在损坏一块盘后,下一块磁盘的损坏导致数据不可修复的概率远大于RAID-10

         实际生产中使用的很少

             例如:

             有6块磁盘分别做RAID-10,RAID-01

            23.png

             RAID-10:在损坏一块盘后,下一块磁盘的损坏导致数据不可修复的概率

                             1/5

             RAID-01:在损坏一块盘后,下一块磁盘的损坏导致数据不可修复的概率

                             3/5

            

RAID-50:(先底层5,上层0)

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

RAID的软件实现方式:

结合内核中的md(multi device)模块

RAID设备可命名为/dev/md0 、/dev/md1 、/dev/md2 、/dev/md3等等

mdadm:模式化的工具

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

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

                 模式:

                 创建:-C

                 装配:-A

                 监控:-F

                 管理:-f, -r, -a

                 <raiddevice>:/dev/md#

                 <component-devices>:任意块设备

                 注意:若使用磁盘分区做RAID,磁盘分区类型必须先修改为fd类型,若把整块磁盘拿来做RAID的无须此操作

                

                 -C:创建模式

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

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

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

                         -c CHUNK_SIZE:指明块大小

                         -x #:指明空闲盘的个数

                

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

                     mdadm -D /dev/md#

                

                 管理模式:

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

                         -a:添加磁盘

                         -r:移除磁盘

                

                 观察md的状态:

                     cat /proc/mdstat

                

                 停止md设备:

                       mdadm -S /dev/md#

                

补充:

生成配置文件:mdadm –D –s >> /etc/mdadm.conf

停止服务:mdadm –S /dev/md0

激活:mdadm –A –s /dev/md0  激活

删除raid信息:mdadm –zero-superblock /dev/sdb1

图片3.png

作业:1、创建一个可用空间为1G的RAID1设备,要求其chunk大小为128k,文件系统为ext4,有一个空闲盘,开机可自动挂载至/backup目录

[root@CentOS6 bin]# fdisk /dev/sda
......
Command (m for help): n
First cylinder (11422-26109, default 11422):
Using default value 11422
Last cylinder, +cylinders or +size{K,M,G} (11422-26109, default 26109): +1G
Command (m for help): t
Partition number (1-10): 10
Hex code (type L to list codes): fd
Changed system type of partition 10 to fd (Linux raid autodetect)
Command (m for help): w
......
[root@CentOS6 bin]# partx -a /dev/sda
BLKPG: Device or resource busy
error adding partition 1
.......
error adding partition 9
[root@CentOS6 bin]# fdisk /dev/sdb
......
Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-2610, default 1):
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-2610, default 2610): +1G
Command (m for help): t
Selected partition 1
Hex code (type L to list codes): fd
Changed system type of partition 1 to fd (Linux raid autodetect)
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
[root@CentOS6 bin]# mdadm -C /dev/md0 -a yes -c 128 -n 2 -l 1 /dev/sda10 /dev/sdb1
mdadm: /dev/sda10 appears to be part of a raid array:
       level=raid10 devices=4 ctime=Sat Aug 13 14:00:41 2016
......
Continue creating array? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
[root@CentOS6 bin]# mdadm -D /dev/md0
/dev/md0:
        Version : 1.2
  Creation Time : Sat Aug 27 19:09:24 2016
     Raid Level : raid1
     Array Size : 1059200 (1034.38 MiB 1084.62 MB)
  Used Dev Size : 1059200 (1034.38 MiB 1084.62 MB)
   Raid Devices : 2
  Total Devices : 2
    Persistence : Superblock is persistent
    Update Time : Sat Aug 27 19:09:29 2016
          State : clean
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0
           Name : CentOS6.localdomain:0  (local to host CentOS6.localdomain)
           UUID : 0cef403b:6b7d04e9:6e82624a:3c7cb111
         Events : 17
    Number   Major   Minor   RaidDevice State
       0       8       10        0      active sync   /dev/sda10
       1       8       17        1      active sync   /dev/sdb1
[root@CentOS6 bin]# mkfs.ext4 /dev/md0
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
......
[root@CentOS6 ~]# mdadm -Ds /dev/md0 >> /etc/mdadm.conf
[root@CentOS6 ~]# blkid /dev/md0
/dev/md0: UUID="1a7cdcab-6799-4773-aa40-7cbc0839281a" TYPE="ext4"
[root@CentOS6 bin]# mkdir /backup
[root@CentOS6 bin]# vim /etc/fstab

z3.png

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

[root@CentOS6 ~]# lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sr0     11:0    1  3.7G  0 rom  /media/CentOS_6.8_Final
sda      8:0    0  100G  0 disk
├─sda1   8:1    0  300M  0 part /boot
├─sda2   8:2    0 97.8G  0 part /
└─sda3   8:3    0    2G  0 part [SWAP]
sdb      8:16   0   10G  0 disk
sdc      8:32   0   10G  0 disk
sdd      8:48   0   10G  0 disk
[root@CentOS6 ~]# fdisk /dev/sdb
......
Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-1305, default 1):
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-1305, default 1305): +1G
Command (m for help): t
Selected partition 1
Hex code (type L to list codes): fd
Changed system type of partition 1 to fd (Linux raid autodetect)
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
[root@CentOS6 ~]# dd if=/dev/sdb of=/dev/sdc bs=1 count=512
512+0 records in
512+0 records out
512 bytes (512 B) copied, 0.0174599 s, 29.3 kB/s
[root@CentOS6 ~]# dd if=/dev/sdb of=/dev/sdd bs=1 count=512
512+0 records in
512+0 records out
512 bytes (512 B) copied, 0.0151496 s, 33.8 kB/s
[root@CentOS6 ~]# partx -a /dev/sdc
[root@CentOS6 ~]# partx -a /dev/sdd
[root@CentOS6 ~]# lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sr0     11:0    1  3.7G  0 rom  /media/CentOS_6.8_Final
sda      8:0    0  100G  0 disk
├─sda1   8:1    0  300M  0 part /boot
├─sda2   8:2    0 97.8G  0 part /
└─sda3   8:3    0    2G  0 part [SWAP]
sdb      8:16   0   10G  0 disk
└─sdb1   8:17   0    1G  0 part
sdc      8:32   0   10G  0 disk
└─sdc1   8:33   0    1G  0 part
sdd      8:48   0   10G  0 disk
└─sdd1   8:49   0    1G  0 part
[root@CentOS6 ~]# mdadm -C /dev/md1 -a yes -n 3 -l 5 -c 256 /dev/sd{b,c,d}1
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md1 started.
[root@CentOS6 ~]# mdadm -D /dev/md1
/dev/md1:
        Version : 1.2
  Creation Time : Sat Aug 27 21:15:20 2016
     Raid Level : raid5
     Array Size : 2118144 (2.02 GiB 2.17 GB)
  Used Dev Size : 1059072 (1034.25 MiB 1084.49 MB)
   Raid Devices : 3
  Total Devices : 3
    Persistence : Superblock is persistent
    Update Time : Sat Aug 27 21:15:29 2016
          State : clean
 Active Devices : 3
Working Devices : 3
 Failed Devices : 0
  Spare Devices : 0
         Layout : left-symmetric
     Chunk Size : 256K
           Name : CentOS6.localdomain:1  (local to host CentOS6.localdomain)
           UUID : 4ccfff84:4930166e:1f9cb732:5973cae4
         Events : 18
    Number   Major   Minor   RaidDevice State
       0       8       17        0      active sync   /dev/sdb1
       1       8       33        1      active sync   /dev/sdc1
       3       8       49        2      active sync   /dev/sdd1
[root@CentOS6 ~]# mdadm -Ds /dev/md1 >> /etc/mdadm.conf
[root@CentOS6 ~]# mkfs.etx4 /dev/md1
[root@CentOS6 ~]# mkdir /mydata
[root@CentOS6 ~]# vim /etc/fstab
/dev/md1 /mydata ext4 defaults0 0

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

(0)
上一篇 2016-08-29 08:49
下一篇 2016-08-29 08:49

相关推荐

  • Python修饰器的函数式编程

    Python的修饰器的英文名叫Decorator,当你看到这个英文名的时候,你可能会把其跟Design Pattern里的Decorator搞混了,其实这是完全不同的两个东西。虽然好像,他们要干的事都很相似——都是想要对一个已有的模块做一些“修饰工作”,所谓修饰工作就是想给现有的模块加上一些小装饰(一些小功能,这些小功能可能好多模块都会用到),但又不让这个小…

    Linux干货 2016-08-15
  • linux启动和内核管理

    linux启动和内核管理:1. 加载BIOS 的硬件信息,获取第一个启动设备2. 读取第一个启动设备MBR 的引导加载程序(grub) 的启动信息3. 加载核心操作系统的核心信息,核心开始解压缩,并尝试驱动所有的硬件设备4. 核心执行init 程序,并获取默认的运行信息5.init 程序执行/etc/rc.d/rc.sysinit 文件6. 启动核心的外挂模…

    Linux干货 2017-03-28
  • 18页PPT带你深度解读运维自动化

    一、概述    在前面的文章中,提到【运维的本质—可视化】,在其中着重强调是自动化的可视化和数据化的可视化。在这个文章中,全面解码看看自动化的极致状态为什么是可视化?在前面的另外一篇文章【运维平台全体系介绍】中,也讲到运维平台体系的构成,提出“**及服务”的理念,其中有几部分和自动化密切相关,比如说资源及服务、配置及服务、架构…

    2015-04-03
  • 系统排错——如何修复和保护你的系统

    作业 1、破解root口令,并为grub设置保护功能 开机启动时按e进入grub菜单,然后按a 编辑当前菜单的kernel选项,在后面追加1,s,S,single中的任意一个,然后回车,输入b键启动 进入了单用户模式,可以直接修改root密码 如何为grub设置保护功能: (1)、首先生成grub的md5密码 (2)、修改grub.conf文件 (3)、重启…

    Linux干货 2016-09-12
  • 网络基础笔记

    网络管理笔记 1. 网络概念:     一组网络设备或计算机,通过无形的规则链接起来的体系!    2. 应用程序种类:     (1)批处理应用程序:            FTP、TFTP、库存更新    &nbsp…

    Linux干货 2017-03-16
  • 数据库基础知识

    关系模型:结构化数据模型实体-关系模型对象关系模型:基于对象的数据模型半结构化数据模型:XML(扩展标记语言) SQL:Structure Query Language结构化查询语言DML:数据操作语言INSERT DELETE SELECT UPDATEDDL:数据定义语言CREATE DROP ALTERDCL: 数据控制语言GRANT REVOKE R…

    Linux干货 2017-09-25