本次博客将会详细讲解有关Liunx操作系统中LVM逻辑卷的基本概述以及有针对性的进行实验操作,并且同样会讲解磁盘配额的相关知识。希望各位朋友不要错过!
目录:
- LVM逻辑卷概述及相关命令
- LVM实际应用实例操作
- 磁盘配额概述
- 磁盘配额相关管理实操
一、LVM逻辑卷概述及相关命令
LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制,普通的磁盘分区管理方式在逻辑分区划分好之后就无法改变其大小,当一个逻辑分区存放不下某个文件时,这个文件因为受上层文件系统的限制,也不能跨越多个分区来存放,所以也不能同时放到别的磁盘上。
而随着Linux的逻辑卷管理功能的出现,这些问题都迎刃而解,用户在无需停机的情况下可以方便地调整各个分区大小。1、LVM基本组成
LVM由四个部分组成:分别为PE(组成磁盘的基本单元)、PV(物理卷,通常为整个磁盘或者部分磁盘,由多个PE构成)、VG(卷组,由多个PV组成)、LV(逻辑卷,LVM就是对其管理的工具,可以连接多个磁盘)。
整个LVM呈现出一环套一环的事态。VG卷组中包含了多个PV物理卷,而每个物理卷中又包含了多个PE,最后LV逻辑卷能够联通同一VG下不同PV中的多个PE。
是不是给绕晕了?无妨,直接上图,最方便理解:2、LVM相关的命令
在LVM中常用的主要的就几个方面:创建LVM时要进行Scan扫描、Create建立、Display显示,维护LVM时需要用到Remove删除、Extend扩展、Reduce减少。详情见下面表格:
日常工作中常用的命令格式如下:二、LVM实际应用实例操作
理论终归只是理论,命令终究要实际敲出来才有用。介绍了这些,下面通过例子来进行实际的LVM编辑吧。
“某公司准备在公司中为广大员工每人建立一份存储空间。”由于用户数量巨大,数据存储需要大量空间,前期先为服务器增加两块SCSI硬盘,并构建LVM逻辑卷(具体挂载到“/mnt”目录下)专门用来存储员工数据。
实验要求已出,让我们开始吧~~~1、建设前期工作环境
即为增加磁盘,并进行分区的操作,为下面的工作做好铺垫。
因为是实验本次建立LVM全程在虚拟机环境进行,首先为没开机的服务器增加两块硬盘(步骤1),开机后使用Xshell对服务器进行远程连接(步骤2),接着跳转到/dev目录下查看新的硬盘是否安装完毕(步骤3)
使用“fdisk”命令,“fdisk /dev/sdb”、“fdisk /dev/sdc”进入硬盘管理工具(步骤1),分别为两块硬盘进行分区(这里为了方便、简洁各只划分了一个区),在交互界面中按“n”进行分区的新建(因为只分了一个区,一路默认即可),切记使用“W”进行保存退出,完成创建后输入“fdisk -l”进行检查——步骤2
但是!
如果想要建立LVM逻辑卷按照上图的ID类型是不行的,所以我们需要返回管理工具,按“t”进行文件类型的修改,将“83”修改为“8e”(步骤1)使用“w”保存
2、建立LVM逻辑卷
完成分区后根据之前概念中的图,先是创建物理卷,然后是创建卷组,最后完成逻辑卷的创建。
(1)创建物理卷
使用“pvcreate”命令,输入“pvcreate /dev/sdb1 /dev/sdc1”(或者“pvcreate /dev/sd{b..c}1”也可)完成物理卷的创建(步骤1),接着使用pvscan命令,查看创建情况(步骤2)
(2)创建卷组
由上面的图可看出,现在仅仅只是建好了物理卷,所有的磁盘都是独立存在的,所以接下来就要创建卷组来把磁盘组合起来。
输入“vgcreate box /dev/sd{b..c}1”(第一个路径为卷组名,后面的所有的路径都为物理卷地址)——步骤1,完成创建后通过“pvscan”命令(步骤2)或者“vgdisplay”命令(步骤3)进行创建后的确认。
(3)创建逻辑卷
上面创建完卷组后,就来到了最后一步“创建逻辑卷”
输入“lvcreate -L 19G -n xxbox box”其中“-L”后面的数字为逻辑卷大小,其容量不可超过卷组大小,“-n”后面为逻辑卷名称,最后的“box”为建立逻辑卷的卷组名(步骤1)。使用“lvdisplay”查看逻辑卷详情(步骤2)。
3、对逻辑卷进行格式化并挂载
完成逻辑卷的创建后,想要能够正常使用,就必须对逻辑卷进行格式化(步骤1)。结束格式化后,因为已知不存在/mnt目录需要使用“mkdir”进行新建(步骤2)。
之后的步骤就跟正常挂载新磁盘分区一样进行挂载,不过由于本次的逻辑卷需要一直存在,因此不能使用“mount”目录临时挂载,而是修改配置文件进行自动挂载——“vim /etc/fstab”(步骤3)。
4、验证挂载是否成功
使用“mount -a”对挂载进行刷新,接着使用“df -h”查看刷新后的挂载表
以上就完成LVM的配置,公司员工就可以通过访问/mnt目录进行数据存储。但是!!
如果LVM逻辑卷被人恶意占用,使用大量空目录占用磁盘节点怎么办?这个时候就是磁盘配额出场大显神威的时候了。
三、磁盘配额概述
什么是磁盘配额?
磁盘配额可以限制指定账户能够使用的磁盘空间,这样可以避免因某个用户的过度使用磁盘空间造成其他用户无法正常工作甚至影响系统运行,在服务器管理中此功能非常重要。
实现磁盘配额的条件:
需要Liunx内核支持
需要安装xfsprogs(事先需要查询该rpm软件包是否安装,若没有安装则需要进行安装否则无法进行磁盘配额)和xfsprogs软件中自带的quota软件包
进行磁盘配额的具体步骤(文字容易描述不清,还是图来的实在):
四、磁盘配额相关管理实操
还是接上面LVM的例子,针对给公司员工进行数据存储的逻辑卷,开展磁盘配额的操作。
首先,关闭增强性安全功能(setenforce=0)——在Centos6中属于必须需要关闭的选项,而在Centos7则可关可不关(步骤1)。
接下来,因为逻辑卷本身属于永久挂载,所以我们的磁盘限额也需要是永久性,即通过修改/etc/fstab进行自动挂载(步骤2)
但是在完成配置文件的修改后,quota是不会马上生效的,这时候查看mount挂载表,逻辑卷显示的依旧是noquota(步骤1),这时候需要进行就是解挂“umount”并重新进行挂载(步骤2、3)
完成quota挂载参数的设置后,就是正式的对逻辑卷进行磁盘配额,使用“xfs_quota”命令,具体编辑配额的格式为:
其中x为启用专家模式
c为使用命令指令执行
limit为限制内容
u为指定用户进行限额
bsoft后为容量软限制(可超出,有时效性,通常七天)
bhard后为容量硬限制
isoft后为数量的软限制
ihard后为数量的硬限制
用户名处填写进行限额的用户
具体实验步骤,如下图:
最后收尾的就是修改挂载目录的权限,在root用户下使用chmod命令将/mnt目录权限更改为所有人均可读、可写、可执行
这样,磁盘配额就全部设置完成了。接下来需要做的就是验证磁盘配额是否正常运行。
磁盘配额中有一条铁律:只要容量、数量有一条达到限额,另一条就无法继续执行。
(1)文件节点只有一个但容量达到限额
使用“dd”验证型复制,从/dev/zero文件中复制满额10M的文件
步骤:
1、使用“su”命令切换到zhy用户下
2、使用“dd if=/dev/zero of=/mnt/test1.txt bs=1M count=10”将/dev/zero中的文件复制到/mnt/tset1.txt中,单次复制1M,复制10次
3、使用“touch”命令创建一个新的空文件夹(应该是无法创建的)
(2)文件节点为满额10个的空文件夹
使用“touch”命令批量创建空的文件夹
步骤:
1、在zhy用户下,使用“touch”命令进行10个空文件夹的批量创建
2、使用“dd”命令,从/dev/zero中复制10K大小的文件(应该是无法创建的)