磁盘配额、阵列与逻辑卷

一、磁盘配额

在内核中执行
以文件系统为单位启用
对不同组或者用户的策略不同

根据块或者节点进行限制
执行软限制(soft limit)
硬限制(hard limit)

步骤一:获得文件系统支持
临时有效:mount -o remount,usrquota,grpquota {mount_point|device}
永久有效:写入配置文件 /etc/fstab 中
检查文件系统是否支持磁盘配额:cat /proc/mounts

13 55 48 --.png

步骤二:新建quota配置文件

quotacheck [options] [mount_point|device]
    -a:扫描/etc/mtab中支持quota的文件系统,后面可不用添加{mount_point|device}
    -u:只新建用户配置文件
    -g:只新建用户组配置文件
    -v:显示详细信息

13 57 25 --.png

步骤三:启动、关闭与配置quota
启动:quotaon [options] [mount_point|device]
        -a:启动/etc/mtab中支持quota的文件系统,后面可不用添加{mount_point|device}
        -u:只启动用户配置文件
        -g:只启动用户组配置文件

        -v:显示详细信息

13 58 50 --.png

关闭:quotaoff [options] [mount_point|device]
        -a:关闭/etc/mtab中支持quota的文件系统,后面可不用添加{mount_point|device}
        -u:只关闭用户配置文件
        -g:只关闭用户组配置文件

        -v:显示详细信息

14 02 33 --.png

配置:edquota [-u username] [-g groupname] 修改限制值
      filesystem blocks soft hard inodes soft hard
      edquota -t 修改宽限时间
      filesstem  block grace period  inode grace period
      edquota -p 范本账号 -u 新账号

13 59 28 --.png

13 59 53 --.png

步骤四:查看quota配置
quota [-vs] [-u username] [-g groupname]
  -s:以MB GB显示数值大小
repquota -a [-vugs]
14 01 17 --.png步骤五:报告配额状态
warnquota

二、RAID

RAID:Redundant Arrays of Inexpensive(Independent)Disks
1988年由加利福尼亚大学伯克利分校(University of California-Berkeley)“A Case for Redundant Arrays of Inexpensive Disks”。
多个磁盘合成一个“阵列”来提供更好的性能、冗余,或者两者都提供

提高IO能力:磁盘并行读写
提高耐用性;磁盘冗余来实现
级别:多块磁盘组织在一起的工作方式有所不同

RAID实现的方式:
硬RAID
外接式磁盘阵列:通过扩展卡提供适配能力
内接式RAID:主板集成RAID控制器
安装OS前在BIOS里配置

软RAID:使用软件模拟,可使用分区或磁盘(使用分区时调整分区类型为fd)

RAID级别
RAID-0:条带卷,strip
RAID-1: 镜像卷,mirror
RAID-2
..
RAID-5
RAID-6
RAID-10
RAID-01

RAID级别
RAID-0:
读、写性能提升;
可用空间:N*min(S1,S2,…)
无容错能力
最少磁盘数:2, 2

RAID-1:
读性能提升、写性能略有下降;
可用空间:1*min(S1,S2,…)
有冗余能力
最少磁盘数:2, 2N

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

RAID-5:
读、写性能提升
可用空间:(N-1)*min(S1,S2,…)
有容错能力:允许最多1块磁盘损坏
最少磁盘数:3, 3+

RAID-6:
读、写性能提升
可用空间:(N-2)*min(S1,S2,…)
有容错能力:允许最多2块磁盘损坏
最少磁盘数:4, 4+

RAID混合类型级别
RAID-10:
读、写性能提升
可用空间:N*min(S1,S2,…)/2
有容错能力:每组镜像最多只能坏一块
最少磁盘数:4, 4+
RAID-01、RAID-50

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

JBOD:Just a Bunch Of Disks
功能:将多块磁盘的空间合并一个大的连续空间使用
可用空间:sum(S1,S2,…)
常用级别:RAID-0, RAID-1, RAID-5, RAID-10, RAID-50, JBOD

软RAID
mdadm:为软RAID提供管理界面
为空余磁盘添加冗余
结合内核中的md(multi devices)
RAID设备可命名为/dev/md0、/dev/md1、/dev/md2、/dev/md3等等

软件RAID的实现
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>: 任意块设备

-C: 创建模式
-n #: 使用#个块设备来创建此RAID;
-l #:指明要创建的RAID的级别;
-a {yes|no}:自动创建目标RAID设备的设备文件;
-c CHUNK_SIZE: 指明块大小;
-x #: 指明空闲盘的个数;

14 27 30 --.png

  -D:显示raid的详细信息;
mdadm-D /dev/md#

14 27 56 --.png

14 31 26 --.png

管理模式:

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

15 04 05 --.png

-a: 添加磁盘

-r: 移除磁盘

增加新的成员
    mdadm –G /dev/md0 –n 4 -a /dev/sdf1

15 01 26 --.png

观察md的状态:

cat /proc/mdstat

停止md设备:
mdadm -S /dev/md#

软RAID配置实例
1、创建并定义
    mdadm -C /dev/md0 -a yes -l 5 -n 3 -x 1 -c 4096 /dev/sd{b,c,d,e}
2、格式化
    mke2fs -j /dev/md0
3、查看详细信息
    mdadm -D /dev/md0
4、增加新的成员
    mdadm –G /dev/md0 –n 4 -a /dev/sdf1
5、模拟磁盘故障
    mdadm /dev/md0 -f /dev/sda1
6、移除磁盘
    mdadm /dev/md0 –r /dev/sda1
7、查看md的状态
    cat /proc/mdstat

其他配置

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

15 02 59 --.png

停止服务:mdadm –S /dev/md0
激活服务:mdadm –A  –s /dev/md0
删除raid信息:mdadm  –zero-superblock /dev/sdb1

三、逻辑卷管理器(LVM)

允许对卷进行方便操作的抽象层,包括重新设定文件系统的大小
允许在多个物理设备间重新组织文件系统
将设备指定为物理卷
用一个或者多个物理卷来创建一个卷组

物理卷是用固定大小的物理区域(Physical Extent,PE)来定义的
在物理卷上创建的逻辑卷是由物理区域(PE)组成
可以在逻辑卷上创建文件系统
可以使用磁盘或分区(使用分区时调整分区类型为8e)

LVM介绍
LVM: Logical Volume Manager,Version: 2
dm: device mapper:将一个或多个底层块设备组织成一个逻辑设备的模块
设备名:/dev/dm-#

软链接:
/dev/mapper/VG_NAME-LV_NAME
    /dev/mapper/vol0-root
/dev/VG_NAME/LV_NAME
    /dev/vol0/root

LVM更改文件系统的容量
LVM可以弹性的更改LVM的容量
通过交换PE来进行资料的转换,将原来LV内的PE转移到其他的设备中以降低LV的容量,或将其他设备中的PE加到LV中以加大容量

1.pv管理工具

    pvcreate /dev/device :新建pv

08 24 35 --.png

    pvdisplay [/dev/device] :显示pv信息

08 25 16 --.png

    pvmove /dev/device :将一pv上的数据移至另一pv
    pvremove /dev/device :删除pv属性

08 26 16 --.png

2.vg管理工具

    vgcreate [-s #] vg_name /dev/device:创建vg

        -s #: 指定pe大小,单位BMG,默认为4M

    vgdisplay [vg_name]:显示vg信息

08 33 24 --.png

    vgextend vg_name lv_name : 增加卷组

08 35 01 --.png

    vgreduce vg_name lv_name :减少卷组

08 36 47 --.png

    gremove vg_name lv_name :删除卷组,先做pvmove,再做vgremove

08 37 31 --.png

3.lv管理工具
    
    lvcreate -L # -n lv_name vg_name : 创建lv
        -L # : 指定lv大小

        -n : 指定lv名称

08 40 07 --.png

    Lvdisplay /dev/vg_name/lv_name :显示lv信息

08 41 18 --.png

    lvextend -L [+]# /dev/vg_name/lv_name :扩容lv

    lvreduce -L [-]# /dev/vg_name/lv_name :缩减lv

        -L [+|-]# :指定lv大小

08 42 25 --.png

08 43 35 --.png

    lvremove /dev/vg_name/lv_name :删除lv
08 47 37 --.png
扩展和缩减逻辑卷

扩展逻辑卷:
lvextend -L [+]#[mMgGtT] /dev/vg_name/lv_name
resize2fs /dev/vg_name/lv_name

缩减逻辑卷:
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

创建逻辑卷实例
创建物理卷
pvcreate /dev/sda3
为卷组分配物理卷
vgcreate vg0 /dev/sda3
从卷组创建逻辑卷
lvcreate -L 256M -n data vg0
mke2fs -j /dev/vg0/data
mount /dev/vg0/data /mnt/data

逻辑卷管理器快照
快照是特殊的逻辑卷,它是在生成快照时存在的逻辑卷的准确拷贝
对于需要备份或者复制的现有数据集临时拷贝以及其它操作来说,快照是最合适的选择。
快照只有在它们和原来的逻辑卷不同时才会消耗空间。
在生成快照时会分配给它一定的空间,但只有在原来的逻辑卷或者快照有所改变才会使用这些空间
当原来的逻辑卷中有所改变时,会将旧的数据复制到快照中。
快照中只含有原来的逻辑卷中更改的数据或者自生成快照后的快照中更改的数据
建立快照的卷大小只需要原始逻辑卷的15%~20%就够了。也可以使用lvextend放大快照。

逻辑卷管理器快照
快照就是将当时的系统信息记录下来,就好像照相一般,若将来有任何数据改动了,则原始数据会被移动到快照区,没有改动的区域则由快照区和文件系统共享。
由于快照区与原本的LV共用很多PE的区块,因此快照去与被快照的LV必须要要在同一个VG上!系统恢复的时候的文件数量不能高于快照区的实际容量。

使用LVM快照
为现有逻辑卷创建快照

#lvcreate -l 64 -s -n snap-data -p r /dev/vg0/data

09 03 12 --.png

挂载快照
#mkdir -p /mnt/snap
#mount -o ro /dev/vg0/snap-data /mnt/snap
删除快照
#umount /mnt/databackup
#lvremove /dev/vg0/databackup

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

     mdadm -C /dev/md# -l 1 -n 2 -x 1 -c 128 -a yes /dev/sda{5,6,7}
     mkfs -t ext4 -L RAID1 /dev/md#
     vim /etc/fstab
     LABLE=RAID1  /backup  ext4  defaults  0  0   

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

       mdadm -C /dev/md# -l 5 -n 3 -c 256 /dev/sda{5,6,7}
       mkfs -t ext4 -l RAID5 /dev/md#
       vim /etc/fstab
       LABLE=RAID5  /mydate  ext4  defaults  0  0

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

(0)
anonymousanonymous
上一篇 2016-08-29 09:02
下一篇 2016-08-29 11:46

相关推荐

  • 第一周作业:计算机的组成及其功能

    第一周作业 主要是对应了马哥视频前两天共八节课的内容,作业一共有六道题 01.描述计算机的组成及其功能 02.按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别 03.描述Linux的哲学思想,并按照自己的理解对其进行解释性描述 04.说明Linux系统上命令的使用格式;详细介绍ifconfig、echo、tty、startx、export、pw…

    2017-09-12
  • linux 文件管理命令

    cp 复制文件或者路径 单源复制: cp [OPTION]…[-T] SOUTCE DEST 如果DEST不存在:则事先创建此文件,并复制源文件的数据流到DEST中 如果DEST存在:   如果DEST是非目录文件:则覆盖目标文件; 如果DEST是目录,就在这个目录中创建一个同名的文件,把源数据复制到这个文件中。 多源复制: cp [O…

    Linux干货 2017-08-28
  • 从“黑掉Github”学Web安全开发

    Egor Homakov(Twitter: @homakov 个人网站: EgorHomakov.com)是一个Web安全的布道士,他这两天把github给黑了,并给github报了5个安全方面的bug,他在他的这篇blog——《How I hacked Github again》(墙)说明了这5个安全bug以及他把github…

    Linux干货 2016-08-15
  • 文本处理工具

    1, head  默认显示前十行 -n  +行号 显示前n行 -行号 显示前n行 -c 字节数 显示前n个字节 tail 默认显示后十行 -n +行号 显示后n行 – 行号 显示后n行 -f 动态显示 cut -d 指定分隔符 -f 选取第几列 –output-delimiter 指定输出符 相关的实际操作: a,…

    2017-07-29
  • 第七周

    1、创建一个10G分区,并格式为ext4文件系统;    (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl; 第一步先在磁盘上创建分区:fdisk /dev/sdc n –> e –> 5 –> default &#…

    Linux干货 2017-05-18
  • Linux下计划任务神器-Crontab

    作为系统运维人员都清楚,在Linux下定义重复性的任务,我们一般会采用crontab来进行:crontab这个指令所设置的工作将会循环的一直进行下去!可循环的时间为分钟、小时、每日、每月、每周。 crontab计划任务: 1)常见用法:crontab命令的作用和用法如下:描述:为每个用户维护周期性的计划任务文件用法:crontab [-u 用户][-l|-r…

    Linux干货 2016-07-22

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-29 14:09

    博客不是知识点的罗列,它需要自己用组织文字描述出来出来自己想要表达的意思。例如一些专也名词,我们可以通过百度百科查询给予解释。如果不好描述,那么就用图来表示,这样文章会很生动形象了。多看看别人的博客,看看别人怎么写的,尝试着自己组织逻辑写出好的文章,加油。