LVM逻辑卷与磁盘配额

本文详细介绍了Linux逻辑卷管理(LVM)的概念、操作步骤及实验,包括物理卷、卷组、逻辑卷的创建、扩展和删除。同时,文章讲解了磁盘配额的设置和管理,阐述了为何需要设置磁盘配额以及在CentOS7中实施配额的步骤。通过实例展示了如何动态调整磁盘容量和限制用户存储空间。
摘要由CSDN通过智能技术生成


一、LVM概述

1.1.Logical Volume Manager ,逻辑卷管理

  • 能够在保持现有数据不变的情况下动态调整磁盘数量,从而提高磁盘管理的灵活性
  • /boot分区用于存放引导文件,不能给予LVM创建
    由于 /boot 中有系统内核、启动文件目录、引导文件,所以不能基于LVM创建;

1.2.LVM 机制基本概念,由三部分组成:

PV (Physical Volume,物理卷)
  物理卷是LVM机制的基本存储设备,通常对应为一个普通分区或整个硬盘。创建物理卷时,会在分区或硬盘的头部创建一个保留区块,用于记录 LVM 的属性,并把存储空间分割成默认大小为4MB的脚本单元(PE),从而构成物理卷。
VG (Volume Group,卷组)
  由一个或多个物理卷组成一个整体,即称为卷组,在卷组中可以动态的添加或移除物理卷。
LV (Logical Volume,逻辑卷)
  从卷组中分割出的一块空间(基于PE进行分割),形成逻辑卷。使用mkfs等工具可在逻辑卷上创建文件系统。

在这里插入图片描述

1.3.LVM的管理命令

  • 主要命令
功能物理卷管理卷组管理逻辑卷管理
Scan 扫描pvscanvgscanlvscan
Create 建立pvcreatevgcreatelvcreate
Display 显示pvdisplayvgdisplaylvdisplay
Remove 删除pvremovevgremovelvremove
Extend 扩展vgextendlvextend
Reduce 减少vgreducelvreduce

二、LVM操作主要命令步骤

2.1.LVM操作主要命令步骤:

建立:先创建 物理卷 → 再创建卷组 → 最后创建逻辑卷;

1、关闭主机,添加两块新硬盘,重启主机

2、先使用fdisk 工具将磁盘设备/dev/sdb、/dev/sdc划分出主分区sdb1、sdc1,并且把分区尖型的ID标记号改为"8e"

fdisk /dev/sdb
fdisk /dev/sdc

~~n p 1 回车 +5G p t  8e w~~ 

3、创建物理卷

pvcreate /dev/sdb1 /dev/sdc1   pvcreate /dev/sd[b-c]1

4、创建卷组,卷组名为vgname1

vgcreate vgname1 /dev/sdb1 /dev/sdc1

5、创建逻辑卷,逻辑卷名为lvnamel,容量为20GB,生成的文件路径为 /dev/vgname1/lvname1:

lvcreate -L 20G -n lvname1 vgname1

6、对逻辑卷进行格式化,创建XFS 文件系统,并挂载到/opt目录下:

mkfs -t xfs /dev/vgname1/lvname1
mount /dev/vgname1/lvname1 /opt
df -hT

7、再扩容
vgextend vgname1 /dev/sdc2
vgdisplay vgname1

lvextend -L+10G /dev/vgname1/lvname1
lvdisplay /dev/vgname1/lvname1

xfs_growfs /dev/vgname1/lvname1    #刷新xfs文件系统容量
resize2fs /dev/vgname1/lvname1       #刷新ext4类型文件系统容量

删除时:先删除 逻辑卷 → 再删除卷组 → 最后删除物理卷。

三、LVM 实验

3.1.新增硬盘

 关闭主机,添加两块20G新硬盘,重启主机

在这里插入图片描述
在这里插入图片描述
fdisk -l 查看新增的两块硬盘 /dev/sdd /dev/sdc
在这里插入图片描述

 3.2.分区并且改分区尖型的ID标记号

 先fdisk /dev/sdd磁盘分区类型设置为 Linux LVM ( 8e ),执行命令 fdisk /dev/sdd :
在这里插入图片描述
 同样的设置 /dev/sdc 磁盘分区类型设置为 Linux LVM ( 8e ),不过分配10G,在把剩下的10G空间后面进行 扩展LVM实验 用。执行命令 fdisk /dev/sdc :
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
现在有

/dev/sdd1 20G  
/dev/sdc1 10G  
/dev/sdc2 10G,都是Linux LVM 类型

注意:我们做的是LVM所以先不急着做格式化,我们先做物理卷。

3.3.创建物理卷

创建物理卷 pvcreat/dev/sdd1 /dev/sdc1 两个设备都创建物理卷。
在这里插入图片描述
 这我们可以使用pvscan 扫描,会有/dev/sdc1/dev/sdd1的物理卷在这里插入图片描述

3.4.创建卷组

创建卷组 vgcreate,卷组名vgname1

vgcreate vgname1 /dev/sdc1 /dev/sdd1=vgcreate vgname1 /dev/sd[cd]1

在这里插入图片描述

3.5.创建逻辑卷

创建逻辑卷,逻辑卷名为abc01,容量为30G(创建的逻辑卷要<=VG 卷组),生成的文件路径为/dev/vgname1/labc01
命令格式 :lvcreat -L 大小 -n 逻辑卷名 卷组名
在这里插入图片描述
查看创建的逻辑卷信息格式:lvdisplay /dev/卷组名/逻辑卷名
在这里插入图片描述

3.6.对逻辑卷格式化,创建 XFS 文件系统,并挂载

我们虽然创建好逻辑卷,但是还不能直接使用要先对逻辑卷进行格式化,创建XFS文件系统,并且挂载。

mkfs.xfs /dev/vgname1/abc01   #对逻辑卷格式化,并创建XFS文件系统

在这里插入图片描述

mkdir /data3
mount /dev/vgname1/abc01 /data3
df -Th

在这里插入图片描述
这是我们就可以进入到/data3下创建文件等命令
在这里插入图片描述
在这里插入图片描述
这时我们的逻辑卷是25G,可用25G。不满足25G的话,我们可以进行 LVM 扩容。


四、LVM 扩容

我们要用到 LVM再扩容命令vgextendlvextend 。注:之前分区的 /dev/sdc2 还有10G没使用,在这里做扩展用。

4.1.创建物理卷

 首先要对/dev/sdc2进行创建为物理卷pvcreate /dev/sdc2

在这里插入图片描述

4.2.扩展卷组

命令格式:vgextend 卷组名 物理卷设备名
在这里插入图片描述
 我们可以用vgdisplay vgname1查看卷组信息情况
在这里插入图片描述

4.3.创建逻辑卷

命令格式:lvextend -L +大小 /dev/组卷名/逻辑卷名

3.6.对逻辑卷格式化,创建 XFS 文件系统,并挂载

-L 换成 -l 的话,以PE的4M为单位添加的,+10G 是添加10G的大小,不加+,代表覆盖后总大小为10G。
在这里插入图片描述
 使用lvdisplay /dev/vgname1/abc01 查看查看逻辑卷信息
在这里插入图片描述

4.4.刷新文件系统容量

 用df -Th查看磁盘信息
在这里插入图片描述

 我们发现逻辑卷的容量还是扩容之前的容量,文件系统类型是XFS,这是我们需要刷新一下文件容量xfs_growfs /dev/vgname1/abc01,再用df-Th查看磁盘信息情况,如果文件类型是ext4的话,则需要使用resize2fs /dev/vgname1/lvname1这条命令,因为他们的文件系统类型不一样,所以刷新的相关命令也不同。
在这里插入图片描述
扩容前使用/data3创建的相关文件内容还在
在这里插入图片描述

五、磁盘配额

5.1.磁盘概述

磁盘配额:规定某个用户账号、某个组账号 只能创建一定空间限额的文件/目录大小。

5.2.为什么要设置磁盘配额?

 因为当Linux根分区的磁盘空间耗尽时,Linux操作系统将无法再建立新的文件,同时也可能会出现 服务程序崩溃、系统无法启动 等故障。

为了避免在服务器中出现类似因 操作不当或黑客攻击等 导致的磁盘空间不足的问题可以启用 磁盘配额功能对用户/组 在指定文件系统(分区)中使用的磁盘空间、文件数量进行限制,以防止个别用户恶意或无意间占用大量磁盘空间,从而保持系统存储空间的稳定性和持续可用性。

在Centos系统中,不同的文件系统 使用不同的磁盘配额配置管理工具例如,XFS文件系统通过 xfs_quota 工具 进行管理EXT3/4 文件系统通过 quota 工具 进行管理。Centos 7 使用 XFS 文件系统,Centos 6 使用 EXT4 文件系统

5.3.实现磁盘限额的条件:

  • 需要Linux内核支持
  • 需要已安装好 xfsprogsquota 软件包

5.4.Linux磁盘限额的特点:

  • 作用范围:针对指定的文件系统(分区)
  • 限制对象:用户帐号、组帐号
  • 限制类型:磁盘容量、文件数量
  • 限制方法:软限制、硬限制

 软限制意思是创建的目录大小超过的配额,会进行提示,但是仍然可以继续创建(在我们的Centos7系统当中可能没有系统提示);而硬限制是,创建的目录大小超过的配额,就会报错,不允许创建。
我们可以执行 mount 命令查看磁盘限额情况,noquota 表示不支持磁盘配额
在这里插入图片描述

5.5.Centos 7中设置磁盘配额步骤

 第一步:检查系统是否已安装 xfsprogs 和 xfs_quota 软件包
rpm -q xfsprogs quota 查看软件包是否已安装
在这里插入图片描述
 如果未安装的则需要用yum install -y xfsprogs quota进行安装

第二步:以支持配额功能的方式挂载文件系统

umount /dev/vgname1/lvname1 #先将正在使用 LVM 的磁盘进行解挂载
#添加挂载参数 "usrquota, grpquota"    ###表示支持 用户、组的配额功能

mount -o usrquota,grpquota /dev/vgname1/lvname1 /opt
#用于增加对用户、组配额功能的支持,【暂时生效,重启失效】

或者进行永久挂载

vim /etc/fstab
#在启动文件fstab中添加一行配置,【重启也生效】
/dev/vgname1/lvname1 /opt xfs defaults, usrquota, grpquota 0 0

umount /dev/vgname1/lvname1
mount -a   #一a选项,将/etc/fstab 的所有内容重新挂载

第三步:编辑用户和组账号的配额设置

useradd duanxiaobao
passwd duanxiaobao
xfs_quota -x -c 'limit -u bsoft=80M bhard=100M isoft=40 ihard=50 duanxiaobao' /opt/
## /opt是挂载的目录

选项功能:

选项功能
-x表示启动专家模式,在当前模式下允许对配额系统进行修改的所有管理命令可用;
-c表示直接调用管理员命令(也可以不用-c,而去配置文件中修改,但是-c 更好用些)
-u指定用户账号对象
-g指定组账号对象
-v显示详细信息
bsoft设置 磁盘容量的软限制大小值(默认单位为KB)
bhard设置 磁盘容量的硬限制大小值(默认单位为KB);
isoft设置磁盘文件数的软限制数量值
ihard设置磁盘文件数的硬限制数量值
#仅限制磁盘容量 配置
xfs_quota -x -c 'limit -u bsoft=80M bhard=100M duanxiaobao' /opt/

#仅限制文件数 配置
xfs_quota -x -c 'limit -u isoft=4 ihard=5 duanxiaobao' /opt/

#查看zhangsan 磁盘容量限制
xfs_quota -c 'quota -uv duanxiaobao' /opt/  

#查看zhangsan 文件数限制
xfs_quota -c 'quota -i -uv duanxiaobao' /opt/

 第五步:验证磁盘配额功能

chmod 777 / opt  #修改用户权限 写的权限,用来去认证
su zhangsan
cd /opt

#验证磁盘容量超限
dd if=/dev/zero of=/opt/ddtest.txt bs=10M count=12

#验证磁盘文件数超限
touch {aa, bb, cc, dd,ee,ff}.txt

dd 命令是一个 设备转换和连续复制命令:

命令解释说明
"if=”指定输入设备(或文件)
"of=”指定输出设备(或文件)
"bs=”指定读取数据块的大小
"count=”指定读取数据块的数量
/dev/zero"零"设备文件,可以无限的提供空字符。常用来生成一个特定大小的文件。

 第六步:查看配额使用情况

#查看所有可用分区的磁盘容量配额使用情况
xfs_quota -x -c 'report -a'

#查看磁盘容量和文件数的报告
xfs_quota -x -c 'report -abih'

六、配额实验

【实操】

6.1.检查系统是否已安装 xfsprogs 和 xfs_quota 软件包

rpm -q xfsprogs quota 查看软件包是否已安装
在这里插入图片描述
 如果未安装的则需要用yum install -y xfsprogs quota进行安装

6.2.解挂并永久挂载

先解挂 ,再将添加到自动挂载文件 /etc/fstab 中
在这里插入图片描述

命令格式: /卷组名 /挂载目录  xfs defaults,usrquota,grpquota 0 0

在这里插入图片描述
wq 保存并退出后,执行命令 mount -a,全部挂载 fstab 中的文件,先df -Th查看磁盘挂载情况,在执行命令 mount 查看,发现该设备已经设置了配额:
在这里插入图片描述
在这里插入图片描述

6.3.编辑用户和组账号的配额设置

 创建duanxiaobao用户并设置密码;

useradd duanxiaobao
passwd duanxiaobao

在这里插入图片描述

 给duanxiaobao 用户设置配额限制:软限制磁盘容量80M,硬限制磁盘容量100M,文件数量8个,软限制硬限制10个。

xfs_quota -x -c 'limit -u bsoft=80M bhard=100M isoft=40 ihard=50 duanxiaobao' /data3/
/data3是挂载的目录
在这里插入图片描述
查看duanxiaobao 磁盘容量限制:xfs_quota -c 'quota -uv duanxiaobao' /data3/
 查看duanxiaobao 文件数限制: xfs_quota -c 'quota -i -uv duanxiaobao' /data3
在这里插入图片描述

6.4.验证磁盘配额功能

chmod 777 /data3 赋予用户所有权限,验证用
在这里插入图片描述
在这里插入图片描述

 验证磁盘容量超限:dd if=/dev/zero of=/data/text,txt bs=10M count=9在这里插入图片描述
在这里插入图片描述

 验证磁盘文件数超限touch {1…11}.tx
在这里插入图片描述

6.5.查看配额使用情况

 查看所有可用分区的磁盘容量配额使用情况:xfs_quota -x -c 'report -a'
在这里插入图片描述

 查看磁盘容量和文件数的报告:xfs_quota -x -c 'report -abih'
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值