三、RAID与LVM

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了三、RAID与LVM相关的知识,希望对你有一定的参考价值。

参考技术A

1、LVM介绍
LVM的安装     采用yum install lvm2即可
PV(Physical Volume)- 物理卷
物理卷在逻辑卷管理中处于最底层,它可以是实际物理硬盘上的 分区 ,也可以是整个 物理硬盘 ,也可以是 raid设备 。
VG(Volumne Group)- 卷组
卷组建立在物理卷之上,一个卷组中至少要包括一个物理卷,在卷组建立之后可动态添加物理卷到卷组中。一个逻辑卷管理系统工程中可以只有一个卷组,也可以拥有多个卷组。
LV(Logical Volume)- 逻辑卷
逻辑卷建立在卷组之上,卷组中的未分配空间可以用于建立新的逻辑卷,逻辑卷建立后可以动态地扩展和缩小空间。系统中的多个逻辑卷可以属于同一个卷组,也可以属于不同的多个卷组。

2、安装LVM管理软件与LVM使用方式
           yum install lvm2
            LVM的使用以及卷的创建需要遵循一定的规则,第一要先创建物理卷,然后创建逻辑卷组,然后创建逻辑卷的形式进行使用,最后在逻辑卷上创建文件系统后就可以正常使用了

3、创建物理卷PV
pvcreate /dev/sdb1  /dev/sdb2 /dev/sdb3
在这三个分区上创建物理卷PV,其实就是在分区上创建出中间的抽象层,就是写上部分数据即可。
Physical volume "/dev/sdb1" successfully created.
Physical volume "/dev/sdb2" successfully created.
Physical volume "/dev/sdb3" successfully created.
出现这个创建成功
pvdisplay   显示已经创建的物理卷的详细信息
PVS        查看简略信息
PVSCAN        查看检录信息

4、创建逻辑卷组
vgcreate vg0 /dev/sdb1 /dev/sdb2 /dev/sdb3
创建名字为vg0的逻辑卷组,将磁盘分区sdb1-3添加到卷组内部去
vgdisplay     显示详细信息
vgs      显示简略信息
VG #PV #LV #SN Attr VSize VFree 
vg0  3  0  0 wz--n- <11.99g <11.99g

5、创建逻辑卷
lvcreate -L 5G -n lv1 vg0   
创建逻辑卷lv1 ,从逻辑卷组vg0中分出5G大小来
lvdisplay      显示详细信息
lvs            显示简略信息

6、LVM卷的挂在
需要对逻辑卷先创建文件系统,他的路径在/dev/vg0/lv1   
mkfs.ext4   /dev/vg0/lv1 对逻辑卷1创建文件系统完成然后就可以挂在正常使用了

7、逻辑卷的扩容
    1、LV的扩容   lvextend -L +1G /dev/vg0/lv1     对逻辑卷lv1扩容1G
    2、扩容后调用命令resize2fs /dev/vg0/lv1     在df查看挂载就会显示分区变大了

8、逻辑卷组的扩容
    1、增加物理卷的数量可以扩容
            vgextend vg0 /dev/sdb4     将sdb4添加到逻辑卷组vg0里面去

9、LV(逻辑卷)缩减
    1、卸载文件系统
            umount
    2、进行逻辑卷检查
             e2fsck -f /dev/vg0/lv1 
    3、重新选定系统大小
              resize2fs /dev/vg0/lv1  10G
    4、修改逻辑卷大小
             lvresize -L 10G /dev/vg0/lv1 

10、VG(逻辑卷组)的缩减
    1、卸载文件系
             umount
    2、将/dev/sdb4把 从vg0 中移除
            vgreduce   vg0    /dev/sdb4

11、删除
    1、删除LV
        lvremove  /dev/vg0/lv1
    2、删除VG
        vgremove vg0
    3、删除PV
        pvremove /dev/sdb1

12、LVM快照

21、RAID(独立冗余磁盘阵列)
RAID技术通过把多个硬盘设备组合成一个容量更大的,安全性更好的磁盘阵列。把数据切割成许多区段后分别放在不同的物理磁盘上,然后利用分散读写技术来提升磁盘阵列整体的性能,同时把多个重要数据的副本同步到不同的物理设备上,从而起到了非常好的数据冗余备份效果。缺点就是磁盘利用率低。

22、RAID的分类目前来说至少有几十种,这里简单介绍一下最常见的四种,RAID0,RAID1,RAID10,RAID5。
 1、RAID 0
        RAID 0是最早出现的RAID模式,即Data Stripping数据分条技术。RAID 0是组建磁盘阵列中最简单的一种形式,只需要2块以上的硬盘即可,成本低,可以提高整个磁盘的性能和吞吐量。RAID 0没有提供冗余或错误修复能力,但实现成本是最低的。
 2、RAID 1
 RAID 1称为磁盘镜像,原理是把一个磁盘的数据镜像到另一个磁盘上,也就是说数据在写入一块磁盘的同时,会在另一块闲置的磁盘上生成镜像文件,在不影响性能情况下最大限度的保证系统的可靠性和可修复性上,只要系统中任何一对镜像盘中至少有一块磁盘可以使用,甚至可以在一半数量的硬盘出现问题时系统都可以正常运行,当一块硬盘失效时,系统会忽略该硬盘,转而使用剩余的镜像盘读写数据,具备很好的磁盘冗余能力。虽然这样对数据来讲绝对安全,但是成本也会明显增加,磁盘利用率为50%。
    3、RAID0+1
    RAID 0+1名称上我们便可以看出是RAID0与RAID1的结合体。在我们单独使用RAID 1也会出现类似单独使用RAID 0那样的问题,即在同一时间内只能向一块磁盘写入数据,不能充分利用所有的资源。为了解决这一问题,我们可以在磁盘镜像中建立带区集。因为这种配置方式综合了带区集和镜像的优势,所以被称为RAID 0+1。把RAID0和RAID1技术结合起来,数据除分布在多个盘上外,每个盘都有其物理镜像盘,提供全冗余能力,允许一个以下磁盘故障,而不影响数据可用性,并具有快速读/写能力。RAID0+1要在磁盘镜像中建立带区集至少4个硬盘。也有一种叫法叫RAID10.
4、RAID5:分布式奇偶校验的独立磁盘结构
    它的奇偶校验码存在于所有磁盘上。RAID5的读出效率很高,写入效率一般,块式的集体访问效率不错。因为奇偶校验码在不同的磁盘上,所以提高了可靠性。但是它对数据传输的并行性解决不好,而且控制器的设计也相当困难。在RAID 5中有“写损失”,即每一次写操作,将产生四个实际的读/写操作,其中两次读旧的数据及奇偶信息,两次写新的数据及奇偶信息。
总结:RAID0大幅度提升了设备的读写性能,但不具备容错能力。RAID1虽然十分注重数据安全,但磁盘利用率太低。RAID5就是raid0和RAID5的一种折中,既提升了磁盘读写能力,又有一定的容错能力,成本也低。RAID10就是RAID0和raid1的组合,大幅度提升读写能力,较强的容错能力,成本也较高。一般中小企业用RAID5,大企业采用RAID10。

23、安装madam命令
    yum install madam

24、部分命令详解
-a    检测设备名称
-n    指定设备数量
-l    指定RAID级别
-C    创建
-v    显示过程
-f    模拟设备损坏
-r    移除设备
-Q    查看摘要信息
-D    查看详细信息
-S    停止RAID磁盘阵列

24、创建一个RAID5模式的磁盘阵列
mdadm -C /dev/md0 -ayes -l5 -n3 -x1 /dev/sdb[1-4]
-C  --create   创建阵列
-a  --auto    同意创建设备,如不加此参数时必须先使用mknod 命令来创建一个RAID设备,不过推荐使用-a yes参数一次性创建
-l   --level   阵列模式,支持的阵列模式有 linear, raid0, raid1, raid4, raid5, raid6, raid10, multipath, faulty, container;
-n     --raid-devices    阵列中活动磁盘的数目,该数目加上备用磁盘的数目应该等于阵列中总的磁盘数目;

25、查看RADI详情
mdadm -D /dev/md0
Raid Level : 阵列级别; 
Array Size : 阵列容量大小;
Raid Devices : RAID成员的个数;
Total Devices : RAID中下属成员的总计个数,因为还有冗余硬盘或分区,也就是spare,为了RAID的正常运珩,随时可以推上去加入RAID的;State : clean, degraded, recovering 状态,包括三个状态,clean 表示正常,degraded 表示有问题,recovering 表示正在恢复或构建;
Active Devices : 被激活的RAID成员个数;
Working Devices : 正常的工作的RAID成员个数;
Failed Devices : 出问题的RAID成员;
Spare Devices : 备用RAID成员个数,当一个RAID的成员出问题时,用其它硬盘或分区来顶替时,RAID要进行构建,在没构建完成时,这个成员也会被认为是spare设备;
UUID : RAID的UUID值,在系统中是唯一的;

26、创建RAID配置文件
创建RAID 配置文件/etc/mdadm.conf
RAID 的配置文件为/etc/mdadm.conf,默认是不存在的,需要手工创建。
该配置文件的主要作用是系统启动的时候能够自动加载软RAID,同时也方便日后管理。但不是必须的,推荐对该文件进行配置。
我们这里需要创建这个文件,测试中发现,如果没有这个文件,则reboot 后,已经创建好的md0 会自动变成md127。
/etc/mdadm.conf 文件内容包括:
由DEVICE 选项指定用于软RAID的所有设备,和ARRAY 选项所指定阵列的设备名、RAID级别、阵列中活动设备的数目以及设备的UUID号。
echo DEVICE /dev/sdb[1-4] >> /etc/mdadm.conf
mdadm -Ds >> /etc/mdadm.conf

26、RAID测试,RAID中模拟一个自盘出现故障
mdadm /dev/md0 -f /dev/sdb1     在之前创建的md0中分区/dev/sdb1出现故障
cat /proc/mdstat    查看重构过程

27、一处损坏的磁盘
mdadm /dev/md0 -r /dev/sdb1        在磁盘阵列md0中将磁盘或者分区

28、删除出现问题的磁盘
mdadm /dev/md0 -r /dev/sdb1

29、增加一块磁盘
mdadm /dev/md0 -a  /dev/sdb1
添加磁盘会曾为热备盘,让热备盘转变为活动磁盘需要执行以下命令
mdadm -G   /dev/md0 -n4    将序号为4的热备盘转转变为活动磁盘
增加后只是阵列的容量增加了,但是文件系统还没有增加,需要执行一下命令
resize2fs    /dev/md0    将磁盘阵列的容量同步到文件系统去

30、 停止磁盘阵列
mdadm -S /dev/md0    停止/dev/md0磁盘阵列
mdadm --zero-superblock /dev/sdb[1-4]    清除所有磁盘上的超级块数据才行,要不没法删除
停止后还要删除配置文件,否则重启还会出现

RAID和LVM以及磁盘配额的综合使用

一、实验需求

1.添加四块硬盘,建立RAID5环境(md5),三主一备。
2.将md5使用LVM做成VG01组,在该VG中新建了两个LV。
3.将这两个LV格式化为ext4xfs,开机自动挂载到系统mnt1,mnt2目录下
4.开启磁盘配额功能,用来进行用户与组分配额的实验
5.在系统中添加用户tom,lisa并加入caiwu组中
6.对组和用户同时设置磁盘配额,分别切换至永华目录下写文件,验证生效优先关系。

二、实验步骤

1、打开虚拟机VMware添加四块硬盘
技术分享图片

**2、查看添加的硬盘是否生效**
[[email protected] ~]# fdisk -l    \查看添加的磁盘是否生效

磁盘 /dev/sda:42.9 GB, 42949672960 字节,83886080 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000c1bf5

   设备 Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     9766911     4882432   83  Linux
/dev/sda2         9766912    39063551    14648320   83  Linux
/dev/sda3        39063552    48828415     4882432   82  Linux swap / Solaris
/dev/sda4        48828416    83886079    17528832    5  Extended
/dev/sda5        48830464    58595327     4882432   83  Linux
/dev/sda6        58597376    83886079    12644352   83  Linux

磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节

磁盘 /dev/sdc:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节

磁盘 /dev/sdd:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节

磁盘 /dev/sde:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节

3、对磁盘进行分区

[[email protected] ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。

更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。

Device does not contain a recognized partition table
使用磁盘标识符 0xf20d7e28 创建新的 DOS 磁盘标签。

命令(输入 m 获取帮助):n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): 
Using default response p
分区号 (1-4,默认 1):
起始 扇区 (2048-41943039,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039):
将使用默认值 41943039
分区 1 已设置为 Linux 类型,大小设为 20 GiB

命令(输入 m 获取帮助):w
The partition table has been altered!

Calling ioctl() to re-read partition table.
正在同步磁盘。
[[email protected] ~]# fdisk /dev/sdc
欢迎使用 fdisk (util-linux 2.23.2)。

更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。

Device does not contain a recognized partition table
使用磁盘标识符 0x3c5be687 创建新的 DOS 磁盘标签。

命令(输入 m 获取帮助):n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): 
Using default response p
分区号 (1-4,默认 1):
起始 扇区 (2048-41943039,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039):
将使用默认值 41943039
分区 1 已设置为 Linux 类型,大小设为 20 GiB

命令(输入 m 获取帮助):
命令(输入 m 获取帮助):
命令(输入 m 获取帮助):w
The partition table has been altered!

Calling ioctl() to re-read partition table.
正在同步磁盘。
[[email protected] ~]# fdisk /dev/sdc
欢迎使用 fdisk (util-linux 2.23.2)。

更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。

命令(输入 m 获取帮助):q

[[email protected] ~]# fdisk /dev/sdd
欢迎使用 fdisk (util-linux 2.23.2)。

更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。

Device does not contain a recognized partition table
使用磁盘标识符 0x2bbb35fc 创建新的 DOS 磁盘标签。

命令(输入 m 获取帮助):n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): 
Using default response p
分区号 (1-4,默认 1):
起始 扇区 (2048-41943039,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039):
将使用默认值 41943039
分区 1 已设置为 Linux 类型,大小设为 20 GiB

命令(输入 m 获取帮助):w
The partition table has been altered!

Calling ioctl() to re-read partition table.
正在同步磁盘。
[[email protected] ~]# fdisk /dev/sde
欢迎使用 fdisk (util-linux 2.23.2)。

更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。

Device does not contain a recognized partition table
使用磁盘标识符 0xa0797fd4 创建新的 DOS 磁盘标签。

命令(输入 m 获取帮助):n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): 
Using default response p
分区号 (1-4,默认 1):
起始 扇区 (2048-41943039,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039):
将使用默认值 41943039
分区 1 已设置为 Linux 类型,大小设为 20 GiB

命令(输入 m 获取帮助):
命令(输入 m 获取帮助):w
The partition table has been altered!

Calling ioctl() to re-read partition table.
正在同步磁盘。

4、建立RAID5环境

[[email protected] ~]# mdadm -Cv /dev/md5 -l5 -n3 -x1 /dev/sd[b-e]    \三主一备
mdadm: layout defaults to left-symmetric
mdadm: layout defaults to left-symmetric
mdadm: chunk size defaults to 512K
mdadm: partition table exists on /dev/sdb
mdadm: partition table exists on /dev/sdb but will be lost or
       meaningless after creating array
mdadm: partition table exists on /dev/sdc
mdadm: partition table exists on /dev/sdc but will be lost or
       meaningless after creating array
mdadm: partition table exists on /dev/sdd
mdadm: partition table exists on /dev/sdd but will be lost or
       meaningless after creating array
mdadm: partition table exists on /dev/sde
mdadm: partition table exists on /dev/sde but will be lost or
       meaningless after creating array
mdadm: size set to 20955136K
Continue creating array? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md5 started.
[[email protected] ~]# cat /proc/mdstat  \查看md5的状态
Personalities : [raid6] [raid5] [raid4] 
md5 : active raid5 sdd[4] sde[3](S) sdc[1] sdb[0]
      41910272 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/2] [UU_]
      [=========>...........]  recovery = 49.0% (10276096/20955136) finish=0.8min speed=200197K/sec

unused devices: <none>
[[email protected] ~]# cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4] 
md5 : active raid5 sdd[4] sde[3](S) sdc[1] sdb[0]
      41910272 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/3] [UUU]

unused devices: <none>
[[email protected] ~]# mdadm -vDs /dev/md5  \查看md5的详细信息
ARRAY /dev/md5 level=raid5 num-devices=3 metadata=1.2 spares=1 name=localhost.localdomain:5 UUID=86676ad1:377ccb12:fb0520b0:74147ede
   devices=/dev/sdb,/dev/sdc,/dev/sdd,/dev/sde

5、对md5做LVM

[[email protected] ~]# pvcreate /dev/md5  \创建物理卷
  Physical volume "/dev/md5" successfully created.
[[email protected] ~]# vgcreate VG01 /dev/md5  \创建卷组
  Volume group "VG01" successfully created
[[email protected] ~]# lvcreate -L 15GB -n LV01 VG01   \创建逻辑卷LV01并且分配空间
  Logical volume "LV01" created.
[[email protected] ~]# lvcreate -L 15GB -n LV02 VG01   \创建逻辑卷LV02
  Logical volume "LV02" created.
[[email protected] ~]# mkfs.ext4 /dev/VG01/LV01        \将LV01格式化成ext4
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=128 blocks, Stripe width=256 blocks
983040 inodes, 3932160 blocks
196608 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=2151677952
120 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
    32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208

Allocating group tables: 完成                            
正在写入inode表: 完成                            
Creating journal (32768 blocks): 完成
Writing superblocks and filesystem accounting information: 完成   

[[email protected] ~]# mkfs.xfs /dev/VG01/LV02 \将LV02格式化成xfs格式
meta-data=/dev/VG01/LV02         isize=512    agcount=16, agsize=245632 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=3930112, imaxpct=25
         =                       sunit=128    swidth=256 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=8 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

6、挂载

[[email protected] ~]# mkdir /mnt1 /mnt2
[[email protected] ~]# vi /etc/fstab  \配置挂载
# /etc/fstab
# Created by anaconda on Wed Sep 12 10:01:17 2018
#
# Accessible filesystems, by reference, are maintained under ‘/dev/disk‘
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=15361c2d-d2c9-4e8d-bc16-be2805b35791 /                       xfs     defaults        0 0
UUID=24fd8eb1-045e-4e3d-8829-3d5229c1b64e /boot                   xfs     defaults        0 0
UUID=357ff8f8-ec6f-404a-acbf-4fd28722c058 /home                   xfs     defaults        0 0
UUID=26dd9d73-2195-4863-a981-a6ea1967d70a /var                    xfs     defaults        0 0
UUID=f4b2e122-3d0a-48cf-9fd3-235fa8eeb1aa swap                    swap    defaults        0 0
/dev/cdrom /mnt iso9660 ro 0 0
/dev/VG01/LV01 /mnt1 ext4 defaults,usrquota,grpquota 0 0 \将逻辑卷挂载并且指定磁盘配额
/dev/VG01/LV02 /mnt2 xfs defaults,usrquota,grpquota 0 0
[[email protected] ~]# mount -a  \重启挂载点
[[email protected] ~]# df -h   \查看挂载是否成功
文件系统               容量  已用  可用 已用% 挂载点
/dev/sda2               14G  882M   14G    7% /
devtmpfs               479M     0  479M    0% /dev
tmpfs                  489M     0  489M    0% /dev/shm
tmpfs                  489M  6.8M  482M    2% /run
tmpfs                  489M     0  489M    0% /sys/fs/cgroup
/dev/sr0               4.3G  4.3G     0  100% /mnt
/dev/sda6               13G   33M   13G    1% /home
/dev/sda5              4.7G  119M  4.6G    3% /var
/dev/sda1              4.7G  119M  4.6G    3% /boot
tmpfs                   98M     0   98M    0% /run/user/0
/dev/mapper/VG01-LV01   15G   41M   14G    1% /mnt1
/dev/mapper/VG01-LV02   15G   33M   15G    1% /mnt2

7、开启磁盘配额功能

[[email protected] ~]# quotacheck -cvug /dev/VG01/LV01   \ext4在开启之前要
quotacheck: Your kernel probably supports journaled quota but you are not using it. Consider switching to journaled quota to avoid running quotacheck after an unclean shutdown.
quotacheck: Scanning /dev/mapper/VG01-LV01 [/mnt1] done
quotacheck: Cannot stat old user quota file /mnt1/aquota.user: 没有那个文件或目录. Usage will not be subtracted.
quotacheck: Cannot stat old group quota file /mnt1/aquota.group: 没有那个文件或目录. Usage will not be subtracted.
quotacheck: Cannot stat old user quota file /mnt1/aquota.user: 没有那个文件或目录. Usage will not be subtracted.
quotacheck: Cannot stat old group quota file /mnt1/aquota.group: 没有那个文件或目录. Usage will not be subtracted.
quotacheck: Checked 2 directories and 0 files
quotacheck: Old file not found.
quotacheck: Old file not found.
[[email protected] ~]# quotaon /mnt1  \开启磁盘配额
[[email protected] ~]# quotaon -p /dev/VG01/LV01     \检查磁盘配额是否开启
group quota on /mnt1 (/dev/mapper/VG01-LV01) is on
user quota on /mnt1 (/dev/mapper/VG01-LV01) is on
[[email protected] ~]# quotaon /mnt2   \xfs可直接开启
[[email protected] ~]# quotaon -p /dev/VG01/LV02  \检查是否开启成功
group quota on /mnt2 (/dev/mapper/VG01-LV02) is on
user quota on /mnt2 (/dev/mapper/VG01-LV02) is on

8、为用户开启磁盘配额

[[email protected] ~]# groupadd caiwu  \添加caiwu组
[[email protected] ~]# useradd tom -g caiwu     \新建tom用户并加入到caiwu组中
[[email protected] ~]# passwd tom 
更改用户 tom 的密码 。
新的 密码:
无效的密码: 密码少于 8 个字符
重新输入新的 密码:
passwd:所有的身份验证令×××已经成功更新。
[[email protected] ~]# useradd lisa -g caiwu   \新建lisa用户加入到caiwu组
[[email protected] ~]# passwd lisa
更改用户 lisa 的密码 。
新的 密码:
无效的密码: 密码少于 8 个字符
重新输入新的 密码:
passwd:所有的身份验证令×××已经成功更新。
[[email protected]host ~]# edquota -u tom  \为用户tom开启磁盘配额
Disk quotas for user tom (uid 1000):
  Filesystem                   blocks       soft       hard     inodes     soft     hard
  /dev/mapper/VG01-LV01          2048       1024       2048          3        1        2
  /dev/mapper/VG01-LV02             0          0          0          0        0        0
[[email protected] ~]# edquota -u tom  \为用户lisa开启磁盘配额
Disk quotas for user lisa (uid 1001):
  Filesystem                   blocks       soft       hard     inodes     soft     hard
  /dev/mapper/VG01-LV01          4096       1024       4096          4        1        4
  /dev/mapper/VG01-LV02             0          0          0          0        0        0

9、验证开启磁盘配额是否生效

[[email protected] /]# chmod 777 /mnt1   \改变文件夹的权限
[[email protected] /]#su tom       \切换到tom用户
[[email protected] mnt]$ cd /mnt1
[[email protected] mnt1]$ dd if=/dev/zero of=tom1.txt bs=1M count=1   \添加一个1MB的文件
记录了1+0 的读入
记录了1+0 的写出
1048576字节(1.0 MB)已复制,0.00334678 秒,313 MB/秒
[[email protected] mnt1]$ dd if=/dev/zero of=tom2.txt bs=1M count=1     \添加第二个文件
dm-0: warning, user file quota exceeded.
dm-0: warning, user block quota exceeded.
记录了1+0 的读入
记录了1+0 的写出
1048576字节(1.0 MB)已复制,0.0029935 秒,350 MB/秒
[[email protected] mnt1]$ dd if=/dev/zero of=tom3.txt bs=1M count=1    \添加第三个文件失败
dm-0: write failed, user block limit reached.
dd: 写入"tom3.txt" 出错: 超出磁盘限额
记录了1+0 的读入
记录了0+0 的写出
0字节(0 B)已复制,0.00107794 秒,0.0 kB/秒
[[email protected] mnt1]$ su lisa   \切换到lisa用户
密码:
[[email protected] mnt1]$ cd /mnt1
[[email protected] mnt1]$ dd if=/dev/zero of=lisa1.txt bs=1M count=1   \添加一个1MB的文件
记录了1+0 的读入
记录了1+0 的写出
1048576字节(1.0 MB)已复制,0.00408002 秒,257 MB/秒
[[email protected] mnt1]$ dd if=/dev/zero of=lisa2.txt bs=1M count=1       \添加第二个文件
dm-0: warning, user file quota exceeded.
dm-0: warning, user block quota exceeded.
记录了1+0 的读入
记录了1+0 的写出
1048576字节(1.0 MB)已复制,0.00293226 秒,358 MB/秒
[[email protected] mnt1]$ dd if=/dev/zero of=lisa3.txt bs=1M count=1       \添加第三个文件
记录了1+0 的读入
记录了1+0 的写出
1048576字节(1.0 MB)已复制,0.0035511 秒,295 MB/秒
[[email protected] mnt1]$ dd if=/dev/zero of=lisa4.txt bs=1M count=1       \添加第四个文件
记录了1+0 的读入
记录了1+0 的写出
1048576字节(1.0 MB)已复制,0.00359935 秒,291 MB/秒
[[email protected] mnt1]$ dd if=/dev/zero of=lisa5.txt bs=1M count=1      \添加第五个文件失败
dm-0: write failed, user file limit reached.
dd: 打开"lisa5.txt" 失败: 超出磁盘限额

10、为组配置配磁盘配额并且验证生效的优先关系

通过lisa用户验证(lisa可以存4个大小为1M的文件)

[[email protected] /]# edquota -g caiwu        \为财务组配置磁盘配额
Disk quotas for group caiwu (gid 1000):
  Filesystem                   blocks       soft       hard     inodes     soft     hard
  /dev/mapper/VG01-LV01          6144       1024       2048          7        1        2
  /dev/mapper/VG01-LV02             0          0          0          0        0        0
[[email protected] /]# su lisa \切换到lisa
[[email protected] /]$ cd /mnt1
[[email protected] mnt1]$ ls
aquota.group  aquota.user  lisa1.txt  lisa2.txt  lisa3.txt  lisa4.txt  lost+found  tom1.txt  tom2.txt  tom3.txt
[[email protected] mnt1]$ rm -rf * \将LV01挂载目录下添加的文件删除
rm: 无法删除"aquota.group": 不允许的操作
rm: 无法删除"aquota.user": 不允许的操作
[[email protected] mnt1]$ ls
aquota.group  aquota.user
[[email protected] mnt1]$ dd if=/dev/zero of=lisa1.txt bs=1M count=1   \添加第一个1M文件
记录了1+0 的读入
记录了1+0 的写出
1048576字节(1.0 MB)已复制,0.00305979 秒,343 MB/秒
[[email protected] mnt1]$ dd if=/dev/zero of=lisa2.txt bs=1M count=1   \添加第二个文件
dm-0: warning, user file quota exceeded.
dm-0: warning, group file quota exceeded.
dm-0: warning, user block quota exceeded.
dm-0: warning, group block quota exceeded.
记录了1+0 的读入
记录了1+0 的写出
1048576字节(1.0 MB)已复制,0.00278399 秒,377 MB/秒
[[email protected] mnt1]$ dd if=/dev/zero of=lisa3.txt bs=1M count=1   \添加三个文件失败
dm-0: write failed, group file limit reached.
dd: 打开"lisa3.txt" 失败: 超出磁盘限额

结论:

    通过为组配置磁盘配额,发现原来lisa配置的空间为4MB,文件数量为4的磁盘配额失效,最终以组的配额空间2MB,数量为2为准,说明组的生效关系优先于用户。

以上是关于三、RAID与LVM的主要内容,如果未能解决你的问题,请参考以下文章

第七章 RAID与LVM磁盘阵列之 RAID

-RAID磁盘阵列原理与搭建

学习Linux第九天;

Linux软件RAID(磁盘冗余阵列)

磁盘管理之raid阵列卡

DELL服务器RAID配置