Linux高级文件系统管理之磁盘配额、软RAID及LVM

高级文件系统管理之磁盘配额、软RAID及LVM

 

本章内容:

设定文件系统配额

设定和管理软RAID设备

配置逻辑卷

 

一、文件系统配额:

    执行软限制(soft limit

硬限制(hard limit

    注:磁盘配额只能针对分区控制有效,不能对整个磁盘控制,也不能跨分区控制。

    1、初始化:

分区挂载选项:usrquotagrpquota

初始化数据库:quotacheck

2、执行:

开启或者取消配额:quotaonquotaoff

直接编辑配额:edquota username

shell中直接编辑:(命令建立配额限制)

setquota usename 4096 5120 40 50 /home

定义原始标准用户:edquota -p user1 user2

blob.png

3、报告:

用户调查:quota username

blob.png

配额概述:repquota /home

blob.png

其它工具:warnquota 

 

事例:将home目录独立出来单独的分区,限制用户的使用。

1)先创建分区,如下图的分区sda6

  blob.png

2)命令同步系统的新增加分区,如下图:

  blob.png

3)命令格式化新分区:

   blob.png

4)创建临时挂载点,进行数据的迁移,如下图:

  blob.png

5)迁移home目录的数据

  blob.png

6)再次将迁移好数据的分区挂载到空目录home下:

  blob.png

7)修改/etc/fstab配置文件,让机器启动自动检测挂载:

  blob.png

8)再次修改/etc/fstab配置文件,对新分区启用配额初始化,如下图:

  blob.png

9)取消和删除临时挂载点:

  blob.png

10)关闭selinux

  blob.png

11reboot

12)系统启动完成后,命令初始化配额数据库和指定生效的分区挂载的目录:

  blob.png

13)设置用户的配额限度:

  blob.png

  blob.png

14)切换用户测试:

  blob.png

二、RAID

1、什么的RAID

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

2、使用RAID的好处:

  提高IO能力:磁盘并行读写

  提高耐用性:磁盘冗余来实现

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

3RAID实现的方式:

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

  内接式RAID:主板集成RAID控制器;安装OS前在BIOS里配置

4RAID的级别了解:

1RAID0(条带卷)

   读、写性能提升;

   可用空间:N*min(disk1,disk2,…)

   无容错能力(坏掉其中任何一块硬盘都不行)

   最少/多磁盘数:2, 2+

   blob.png

(2RAID1(镜像卷)

  读性能提升、写性能略有下降(因为同一份数据要写两次);

  可用空间:1*min(drive1,drive2,…)

  有冗余能力(可以出现坏掉其中的一块磁盘)

  最少/最多磁盘数:2, 2N

 没有应对防误删的能力。

 blob.png

(3RAID4

 读、写性能提升

 可用空间:(N-1)*min(disk1,disk2,…)

 有容错能力:允许最多1块磁盘损坏

 最少/最多磁盘数:3, 3+

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

 可以通过校验盘的数据来应对其中的一块硬盘坏掉时,更换上新硬盘时可以恢复时间;但是由于校验盘的长时间读写,比较容易坏掉。

 blob.png

4)、RAID5:(带有校验的条带机)

    读、写性能提升

    可用空间:(N-1)*min(disk1,disk2,…)

    有容错能力:允许最多1块磁盘损坏

    最少/最多磁盘数:3, 3+

    据块P为校验位(当其中的一块硬盘坏掉时,更换上新的硬盘时,会自动通过校验位恢复相应的数据)

  blob.png

5)、RAID6读、写性能提升

   可用空间:(N-2)*min(disk1,disk2,…)

   有容错能力:允许最多2块磁盘损坏

   最少/最多磁盘数:4, 4+

   数据块PQ为校验位(当其中的两块硬盘坏掉时,更换上新的硬盘时,会自动通过校验位恢复相应的数据)

  blob.png

6RAID10混合类型级别:是两两成对组成了RAID1,再做RAID0

  (相当于一份数据先RAID0分开两份写,再RAID1同时写两份)

   读、写性能提升

   可用空间:N*min(disk1,disk2,…)/2

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

   最少/最多磁盘数:4, 4+

  blob.png

7RAID01混合类型级别:是两两成对组成了RAID0,再做RAID1

(相当于一份数据先RAID1同时写两份,再RAID0分开写两份)

  读、写性能提升

  可用空间:N*min(disk1,disk2,…)/2

  有容错能力:每组镜像可以全坏掉,但是只能坏其中的一组,如果两组同时出现坏掉其中的一块则不可以。

  最少/最多磁盘数:4, 4+

 blob.png

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

9JBODJust a Bunch Of Disks

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

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

 

三、mdadm命令:为软RAID提供管理界面

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

2mdadm:模式化的工具

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

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

4、模式:创建:-C;装配: -A;监控: -F;管理:-f, -r, –-D:显示raid的详细信息(mdadm -D /dev/md#)。

5C:创建模式

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

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

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

-c CHUNK_SIZE: 指明块大小

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

6、管理模式:

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

-a: 添加磁盘

-r: 移除磁盘

7、观察md的状态:

cat /proc/mdstat

9、创建软RAID步骤:

使用mdadm创建并定义RAID设备:#mdadm -C /dev/md0 -a yes -l 5 -n 3 -x 1 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1

 用文件系统对每个RAID设备进行格式化:#mke2fs -j /dev/md0

10、软RAID测试和修复:

测试RAID设备:使用mdadm检查RAID设备的状况:#mdadm –detail|D /dev/md0

  增加新的成员:#mdadm -G /dev/md0 -n4 -a /dev/sdf1

模拟磁盘故障:#mdadm /dev/md0 -f /dev/sda1

  移除磁盘:#mdadm /dev/md0 -r /dev/sda1

  从软件RAID磁盘修复磁盘故障:替换出故障的磁盘然后开机;在备用驱动器上重建分区

  #mdadm /dev/md0 -a /dev/sda1

mdadm/proc/mdstat及系统日志信息

11、软RAID管理:

生成配置文件:mdadm -D -s >> /etc/mdadm.conf(可以避免停止后启动不了)

停服务:mdadm -S /dev/md0

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

强制启动:mdadm -R /dev/md0

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

12、删除软RAID

    1#umount /mnt/raid 取消挂载

    2#mdadm -S /dev/md0 停止RAID设备

     blob.png

    3)删除相应的分区,并同步到系统即可

    4#mdadm –zero-superblock /dev/sd* 清除RAID在各个磁盘分区上的信息

    5)清除/etc/fstab上的挂载信息

    6)删除RAID的配置文件

       7)删除挂载点目录

 

事例:演示在CentOS6系统上做软RAID5

1)先准备三块磁盘

blob.png

2)先对其中的一块磁盘进行分区,把全部的空间分成一个分区,如下图:

(可以用分区或者用整块磁盘来做RAID

blob.png

3)将已经分区好的磁盘分区表复制到其他磁盘即可,如下图:

blob.png

4)需要对同步分区表的磁盘在系统上进行同步:

blob.png

5)使用命令创建RAID5,如下图:(创建/dev/md0块设备,-a yes是让创建时默认回答yes-l 5是指定RAID的级别为5-n 3是指定有几块磁盘分区在使用;-x 1指定有几个磁盘分区为空闲状态;后面跟上哪些磁盘分区组成RAID5

blob.png

blob.png

6)创建RAID5完成,效果如下图:

blob.png

7)生成配置文件,以免出现启动不了时可以进行恢复:

blob.png

8)格式化磁盘:

blob.png

9)修改/etc/fstab

blob.png

blob.png

10)挂载RAID5设备:

blob.png

blob.png

11)模拟其中的一个分区磁盘坏掉,测试效果如下图:

blob.png

blob.png

12)恢复模拟损坏的磁盘分区:

blob.png

 

 

事例:删除软RAID

1)先取消挂载和停止RAID设备:

blob.png

2)删除各个磁盘分区

blob.png

blob.png

blob.png

3)查看清除磁盘分区后的系统磁盘信息:

(如果是一个磁盘分了多个分区的,需要使用命令#partx -d –nr N-M /dev/sd*逐个同步;*为各个磁盘的编号)

blob.png

4)修改/etc/fstab

blob.png

5)删除RAID配置文件:

blob.png

6)删除挂载目录:

blob.png

 

 

四、LVM(逻辑卷管理器)

blob.png

(注:LVM可以弹性的更改LVM的容量;删除逻辑卷必须先删除LV,再删除VG,最后删除PV

1、允许对卷进行方便操作的抽象层,包括重新设定文件系统的大小

2、允许在多个物理设备间重新组织文件系统:

 (1)将设备指定为物理卷

 (2)用一个或者多个物理卷来创建一个卷组

 (3)物理卷是用固定大小的物理区域(Physical ExtentPE)来定义的

 (4)在物理卷上创建的逻辑卷是由物理区域(PE)组成

 (5)可以在逻辑卷上创建文件系统

3pv管理工具:

 (1)显示pv信息:(pvs:简要pv信息显示;pvdisplay

   blob.png

 (2)创建pvpvcreate /dev/DEVICE

 (分区需要更改分区的ID编号,则拿整个磁盘不需要去做ID的更改)

blob.png

blob.png

blob.png

blob.png

4vg管理工具:

1)显示卷组:vgs或者vgdisplay

2)创建卷组:vgcreate vg0 /dev/sd{a6,b}

    blob.png

 (3)管理卷组:vgextend vg0 /dev/sdc

           vgreduce vg0 /dev/sdc

 (4)删除卷组:先做pvremove,再做vgremove

5lv管理工具:

 (1)显示逻辑卷:lvs或者Lvdisplay

  (2)创建逻辑卷:lvcreate-L #[mMgGtT] -n NAME VolumeGroup

  (3)删除逻辑卷:lvremove/dev/VG_NAME/LV_NAME

  (4)重设文件系统大小:fsadm[options] resize device [new_size[BKMGTEP]]

resize2fs [-f] [-F] [-M] [-P] [-p] device [new_size]

blob.png

blob.png

(注:如下图,/dev/vg0/lv0其实是一个软链接)

blob.png

格式lv0逻辑卷:

blob.png

修改/etc/fstab配置文件:

blob.png

创建挂载点和挂载逻辑卷:

blob.png

5、扩展和缩减逻辑卷:

   1)扩展逻辑卷:

# lvextend -L [+]#[mMgGtT] /dev/VG_NAME/LV_NAME

# resize2fs /dev/VG_NAME/LV_NAME

blob.png

blob.png

 (2)缩减逻辑卷:

# umount/dev/VG_NAME/LV_NAME

# e2fsck -f /dev/VG_NAME/LV_NAME

# resize2fs /dev/VG_NAME/LV_NAME #[mMgGtT]

# lvreduce -L [-]#[mMgGtT] /dev/VG_NAME/LV_NAME

# mount

6、扩展逻辑卷卷组空间:

   1)创建物理卷:pvcreate /dev/sdc

    blob.png

 2)为卷组分配物理卷:vgextend vg0 /dev/sdc

 blob.png

 

 

  

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

blob.png

blob.png

blob.png

blob.png

blob.png

blob.png

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

blob.png

blob.png

 

3、创建lv

blob.png

blob.png

blob.png

blob.png

4、扩展lv

blob.png

5、扩展卷组:

 扩展前:

 blob.png

 扩展后:

 blob.png

 

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

(0)
Aaron_wangAaron_wang
上一篇 2016-09-01 08:50
下一篇 2016-09-01 08:50

相关推荐

  • 0801课堂练习与作业

    1、将/etc/issue文件中的内容转换为大写后保存至/tmp/issue.out文件中      cat /etc/issue | tr 'a-z' 'A-Z' > /tmp/issue.out 2、将当前系统登录用户的信息转换为大写后保存至/tmp/who.out文…

    Linux干货 2016-08-02
  • select case的用法-函数练习-20160819

    §·select  case的用法 *介绍select 循环与菜单 ◎语法 select  variable  in  list[ ] do 循环体命令 Done  ◎select 循环主要用于创建菜单,按数字顺序排列的菜单项将显示在标准错误上,并显示PS3 提示符,等待用户输 入 ◎用户…

    Linux干货 2016-08-19
  • PHP SOCKET编程

    1. 预备知识        一直以来很少看到有多少人使用php的socket模块来做一些事情,大概大家都把它定位在脚本语言的范畴内吧,但是其实php的socket模块可以做很多事情,包括做ftplist,http post提交,smtp提交,组包并进行特殊报文的交互(如smpp协议),whois查询。这些都是比较常见…

    Linux干货 2015-04-10
  • 详解用户,组,权限管理

    详解用户,组,权限管理 M21-陆东贵 测试环境:CentOS 7.2 内容介绍: 我们要使用操作系统进行工作,就需要人机交互操作,这时候计算机就需要创建用户,通过用户来实现操作,而且随着用户的增加需要给用户分组,这时候就需要对文件进行权限管理。 需要使用的工具:       用户相关工具:useradd; …

    Linux干货 2016-10-25
  • 缓存需知

    Edit Web缓存核心技术点需知 5.1 HTTP首部控制 5.2 基于新鲜度检测机制: 2.1 特征1:时间局部性 2.2 特征2:空间局部性 2.3 缓存的优点 2.4 哪类数据应该被缓存 2.5 哪类数据可缓存但不应该被缓存 2.6 缓存命中率决定缓存有效性 2.7 缓存数据生命周期 2.8 缓存处理步骤 2.9 缓存和普通数据读取的区别 1. 完整…

    Linux干货 2015-02-22
  • 帮助和文件管理信息

    history命令: -c 清空命令历史 -d offset 删除历史中指定的第offset个命令 n 显示最近的n条历史 -a 追加本次会话新执行的命令历史列表至历史文件 -n 读历史文件中未读过的行到历史列表 -r 读历史文件附加到历史列表 -w 保存历史列表到指定的历史文件 -p 展开历史参数成多行,但不存在历史列表中 -s 展开历史参数马一行。附加在…

    Linux干货 2017-04-11

评论列表(1条)

  • 马哥教育
    马哥教育 2016-09-01 17:43

    文章内容很完整,通篇下来能让读者学到很多知识,继续努力。