LVM(逻辑卷)与磁盘配额

文章介绍了LVM的概念和管理命令,包括如何创建物理卷、卷组和逻辑卷,并进行挂载。同时,详细阐述了磁盘配额的作用和设置方法,特别是如何在CentOS7中为用户和组设置磁盘容量及文件数量的软硬限制,以防止磁盘空间滥用。
摘要由CSDN通过智能技术生成

LVM概述

  • logical volume manager,逻辑卷管理
  1. ** 能够在保持现有数据不变的情况下动态调整磁盘容量,从而提高磁盘管理的灵活性**
  2. /boot/分区用于存放引导文件,不能基于LVM创建

LVM机制的基本概念

  • PV (物理卷)
    可能是一个硬盘一个分区组成,一个物理卷pv将一个硬盘或者分区打散成多个pe,每个pe大小4mb
  • VG(卷组)
    一个卷组vg由多个pv物理卷组成
  • LV (逻辑卷)
    在卷组中,划分适量大小的空间给逻辑卷
    在这里插入图片描述

LVM的管理命令

  • 主要命令
功能物理卷管理卷组管理逻辑卷管理
Scan扫描pvscanvgscanlvscan
Create 建立pvcreatevgcreatelvcreate
Display显示pvdisplayvgdisplaylvdisplay
Remove删除pvremovevgremovelvremove
Extend扩展——vgextendlvextend
Reduce减少——vgreducelvreduce
  • 主要命令
  1. pvcreat 设备名 1[设备名2…]
  2. vgcreate 卷组名 物理卷名1 物理卷名2
  3. lvcreate -L 容量大小 -n 逻辑卷名 卷组名
  4. lvextend -L +大小 /dev/卷组名/逻辑卷名

创建逻辑卷实验

实验:虚拟机新增两个硬盘,并创建abc卷组和abc01逻辑卷,将他们挂载到目录/opt/中

  • 第一步,关闭虚拟机,增加两个20G的硬盘
    在这里插入图片描述
  • 第二步,将新增的磁盘划分出主分区/dev/sdb2和/dev/sdc1
    使用fdisk +硬盘文件名
    然后输入n 新建分区 之后一直空格
    然后输入t 设置区分类型,L可以查看所有的类型标号,例如:83是默认Linux类型,这边选择8e,创建虚拟卷的类型
    输入 p 查看分区状态
    然后w/q 保存退出/不保存退出,这边设置好了,保存退出w

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

  • 第三步,主分区创建好之后,创建物理卷
    输入命令 pvcreate /dev/sdb2 + /dev/sdc1
    在这里插入图片描述
    这边显示创建成功
  • 第四步 创建卷组,将新创建的主分区物理卷sdb2和sdc1放在abc卷组中
    输入命令vgcreate +abc(卷组名)+/dev/sdb2+/devsdc1(即两个刚创建的物理卷

在这里插入图片描述
这边创建成功

  • 第五步创建逻辑卷abc01,容量划分20G
    输入命令:lvcreate -L 需要划分的容量大小 -n 逻辑卷名 卷组名
    lvcreate -L 20G -n abc01 abc
    在这里插入图片描述
    逻辑卷创建完成
  • 第六步,对逻辑卷进行格式化,创建xfs文件系统
    输入命令:mkfs -t xfs /dev/卷组名/逻辑卷名
    mkfs -t xfs /dev/abc/abc01
    在这里插入图片描述
    这边逻辑卷格式化完成
  • 第七步,将逻辑卷挂载到/opt/目录下
    输入命令:mount /dev/卷组名/逻辑卷名 空格/需要挂载的目录
    mount /dev/abc/abc01 /opt/
    挂载完成后查看是否挂载完成
    在这里插入图片描述
    这边查看到逻辑卷abc已经创建完成并且划分到abc01卷组中,也挂载到目录/opt中,实验完成

总结创建物理卷,卷组,逻辑卷,格式化逻辑卷和挂载目录相关命令

  1. :关闭主机,添加需要的新硬盘,重启主机
  2. :先使用 fdisk 工具将碰盘设备/dev/sdb、/de/sdc划分出主分区sdb1、sdc1,并且把分区类型的 ID 标记号改为"8e"
    fdisk /dev/sdb
    fdisk /dev/sdc
    n t p w(fdisk的命令)
  3. :创建物理卷
    pucreate /dev/sdb1 /dev/sdc1
  4. :创建卷组,卷组名为vgname1
    vgcreate vgnamel /dev/sdb1 /dev/sdc1
  5. :创建逻辑卷,逻辑卷名为lvname1,容量为 20G,生成的文件路径为/dev/vgname1/lvname1
    lvcreate -L 20G -n lvname1 vgname1
  6. : 对逻辑卷进行格式化,创建 xfs 文件系统,并挂载到/opt目录下
    mkfs -t xfs /dev/vgname1/lvname1 格式化逻辑卷
    mount /dev/vgname1 /lvname1 /opt 挂载到/opt目录下
  7. lsblk或者df -hT查看一下,或者mount查看一下挂载情况

实验2:扩容卷组和逻辑卷

  • 增加一个新的硬盘,若是原来卷组的容量不够的话,可以查看是否够不够
    输入命令vgdisplay
    这是我们上条实验做得卷组,以及可用的空间,这边可以进行扩容,
    在这里插入图片描述
  • 第一步:增加一个新的硬盘,划分主分区
    输入命令:fdisk /dev/sdd,划分新的硬盘的主分区

在这里插入图片描述
这边操作跟实验一的第二步一样

  • 第二步,创建物理卷
    输入命令:pvcreate /dev/sdd1
    在这里插入图片描述
    这边创建完成
  • 第三步,扩展需要扩容的卷组,这边需要扩容abc卷组,
    输入命令vgextend 卷组名 新增的物理卷
    输入命令vgextend abc /dev/sdd1
    在这里插入图片描述
    这边输入vgdisplay可用查看是否扩容完成
    在这里插入图片描述
  • 第四步,卷组扩容20G之后,扩容逻辑卷
    输入命令:lvextend -L +需要扩容的容量 +/dev/卷组/逻辑卷名
    lvextend -L +20G /dev/abc/abc01
    在这里插入图片描述
    查看是否扩容输入命令:lvdisplay
    在这里插入图片描述
    这边显示扩容完成,但是系统还没有识别,需要刷新
  • 第五步,刷新文件系统容量
    xfs_growfs /dev/vgname1/lvname1 #刷新xfs文件系统容量
    在这里插入图片描述
    这边文件系统还未显示扩容完成,输入下面命令
    xfs_growfs /dev/abc/abc01 #刷新文件系统容量
    resize218 /dev/vgname1/lvname1 #刷新ext.4类型文件系统容量
    在这里插入图片描述

刷新完成输入命令df -hT查看一下
在这里插入图片描述
逻辑卷挂载完成

设置磁盘配额

  • 当Linux根分区的磁盘空间耗尽时,Linux操作系统将无法再建立新的文件,同时也可能会出现服务程序崩溃、系统无法启动等故障。
  • 为了避免在服务器中出现类似磁盘空间不足的问题,可以启用磁盘配额功能,对用户在指定文件系统(分区)中使用的磁盘空间、文件数量进行限制,以防止个别用户恶意或无意间占用大量磁盘空间,从而保持系统存储空间的稳定性和持续可用性
  • 在 centOs 系统中,不同的文件系统使用不同磁盘配额配置管理工具。例如,Xfs 文件系统通过 xfs_quota 工具进行管理, ext3/4 文件系统通过 quota
    工具进行管理。

磁盘配额概述

  • 实现磁盘限额的条件
  1. 需要Linux内核支持
  2. 安装xfsprogs与quota软件包
  • Linux磁盘限额的特点
  1. 作用范围:针对指定的文件系统(分区)

  2. 限制对象:用户账号、组账号

  3. 限制类型:磁盘容量、文件数量

  4. 限制方法:软限制、硬限制

     软限制:算是一种警告和体现,如限制一个数值,磁盘内容占了90%
     提醒一下磁盘内容要占满了
     硬限制:则是磁盘上限了
     例子:软限制80M.硬限制100M
     当磁盘使用到达80m时候会提醒,磁盘容量要占满了,超过软限制了
     当磁盘使用到达100m时候会提醒和提示,无法再写入了
    

Centos7中设置磁盘配额步骤

  1. 检查是否已经安装xfsprogs和xfs_quota软件包
    rpm -q xfsprogs quota
    yum install -y xfsprogs quota
    在这里插入图片描述

  2. 以支持配额功能挂载
    umount /dev/vgname1/lvname1(先解挂,我们这边使用上面创建的逻辑卷和卷组即abc卷组和abc01逻辑卷)
    mount -o usrquoat,grpquota /dev/vgname/lvname /opt #添加挂载参数“usrquota。grpquota”用于增加对用户、组配额功能的支持(这个命令是永久挂载)
    需要先解挂载
    在这里插入图片描述

或者vim /etc/fstab
/dev/vgname1/lvname1 /opt xfs defaulats,usrquota,grpquota 0 0
umount /dev/vgname1/lvname
在这里插入图片描述
在这里插入图片描述
解挂载后输入mount -a即可再次挂载
实现永久性挂载

mount -a # -a选项,将/etc/fstab的所有内容重新加载
3. 编辑用户和组账号的配额设置
useradd zhangshan 创建用户
passwd zhangshan 创建用户密码
xfs_quota -x -c ’limit -u bsoft -80M bhard-100M isoft 40 ihard 50 zhangsan’ /opt
-x:表示 启动专家模式,在当前模式下与允许 对配额系统进行修改的所有管理命令
-c:表示直接调用管理命令(调用的管理命令用引号括起来)
-u:指定用户账号对象(用户放在最后)
-g:指定组账号对象
bsoft:设置磁盘容量的软限制数值(默认单位为KB)
bhard:设置磁盘容量的硬限制数值(默认单位为KB)
isoft:设置磁盘文件数的软限制数值
ihard:设置磁盘文件数的硬限制数值
在这里插入图片描述

#仅限制磁盘容量
xfs_quota -x -c ‘limit -u bsoft=80M bhard=100M zhangshan’ /opt/
#仅限制磁盘文件数
xfs_quota -x -c ‘limit -u isoft=4 ihard=5 zhangsan’ /opt
#查看zhangsan磁盘容量限制
xfs quota -c ’quota -uv zhangsan‘ /opt/
在这里插入图片描述

#查看磁盘文件限制
xfs quota -c ’quota -i -uv zhangsan‘ /opt/
在这里插入图片描述
#验证磁盘配额功能
chmod 777 /opt/ #所有普通用户都可以对opt用户有读写权限,该命令是附加权限
在这里插入图片描述
在这里插入图片描述

su zhangsan #切换到张三目录
cd /opt #进入opt目录验证
#验证磁盘容量超限
dd if=/dev/zero of=/opt/ddtest.txt bs=10M count=12
dd 命令是一个设备转换和连续复制命令
"if=”指定输入设备(或文件)就是指定复制的路径
of=指定输出设备(或文件)
”bs=”指定读取数据块的大小(每一次读取的大小)
“count=”指定读取数据块的数量/dev/zero“零"设备文件,可以无限的提供空字符。常用来生成一个特定大小的文件(复制次数)
在这里插入图片描述
在这里插入图片描述
这边删除zhangshuo目录下的文件,这是之前验证用dd命令创建的90m的文件,在zhangshuo目录下的opt目录中
这边我们在重新创建一个超过一百m的命令,看是否创建成功
在这里插入图片描述
创建失败,硬限制在限制,所以实验成功

#验证磁盘文件数超限
touch {aa,bb,cc,dd,ee,ff}.txt
这边删除zhangshuo目录下的opt目录的所有文件,再去创建多个文件,看文件硬限制是否限制
在这里插入图片描述
文件数量的硬限制也成功限制
实验成功

xfs_quota -x -c ‘report -abih’ #查看所有用户的文件限制和容量限制
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值