LVM与磁盘配额

目录

一、LVM概述

1.1、LVM 概述

1.2、LVM机制的基本概念

二、LVM 管理命令

2.1、主要命令

2.2、LVM命令详解

三、设置磁盘配额

3.1、磁盘配额的概述

3.2、磁盘配额步骤

四、CentOS 7 中设置磁盘配额的步骤

一、LVM概述

1、LVM概述

LVM是Linux系统中对磁盘分区进行管理的一种逻辑机制,它是建立在硬盘和分区之上,文件系统之下的一个逻辑层,在建立文件系统时屏蔽了下层的磁盘分区布局,能够在保持现有数据不变的情况下动态调整磁盘容量,从而提高了磁盘管理的灵活性

2、LVM机制的基本概念

1)PV(Physical Volume,物理卷):

物理卷是LVM机制的基本存储设备,通常对应为一个普通分区或整个硬盘。创建物理卷时,会在分区或硬盘的头部创建一个保留区快,用于记录LVM的属性,并把储存空间分割成默认大小为4MB的基本单元(PE),从而构成物理卷

2)VG(Logical Volume,逻辑卷)

由一个或多个物理卷组成一个整日,即称为卷组,在卷组中可以动态的添加或移除物理卷

3)LV(Logical Volume,逻辑卷)

逻辑卷建立在卷组上,与物理卷没有直接关系。对于逻辑卷来说,每一个卷组就是一个整体,从卷组中分割出的一块空间,作为用户创建文件系统的基础,这就是逻辑卷。使用 mkfs等工具可在逻辑卷上穿件文件系统

二、LVM 管理命令

1、主要命令

2、LVM命令详解

1)pvcreate命令

①、概述:pvcreate用于将整个分区或整个硬盘转换成物理卷,主要是添加LVM属性信息并且划分PE存储单位。

②、格式:pvcreate 设备名1 设备名2...

③、例:pvcreate /dev/sd[bc]1  使用通配符加入多个设备

pvcreate /dev/sdb1/  dev/sdc1

2)、pvdisplay命令

①、概述:显示物理卷的详细信息,需要使用指定的物理卷作为命令参数,默认时将显示所有的物理卷信息

②、例1:pvdisplay   显示所有物理卷信息

例2: pvdisplay /dev/sdb1   查看物理卷/dev/sdb1的详细信息

3)vgcreate命令

①、概述:用于将一个或多个物理卷创建为一个卷组

②、格式:vgcreate 卷组名 物理卷名1 物理卷名2

③、例:vgcreate abc /dev/sdb1 /dev/sdc1     用单个物理卷创建组名abc的卷组

vgcreate abc /dev/sd[bc]1                   通配符方法创建组名abc的卷组

4)vgdisplay命令

①、概述:显示系统中各卷组的信息,需要指定卷组名作为指定参数,若不指定卷组名,则显示所有卷组参数

②、例:vgdisplay            显示所有卷组信息

vgdisplay abc      显示卷组名为abc的参数信息

5)vgextend命令

①、概述:用于扩展磁盘空间。当创建了新的物理卷,并需要将它添加到已有卷组中,就使用该命令

②、格式:vgextend 卷组名 新物理卷

③、例:vgextend abc /dev/sdd1       将新物理卷/dev/sdd1扩加值卷组abc中

6)lvcreate 命令

①、概述:用于从指定的卷组中分割空间,创建新的逻辑卷,需要指定逻辑卷的大小名称及所在的卷组作为参数

②、格式:lvcreate  -L 逻辑卷容量大小  -n  逻辑卷名  卷组名

③、例:lvcreate -L 30G -n abc01 abc       从卷组abc中划出30G创建名为abc01的逻辑卷

7)lvdisplay 命令

①、概述:用于显示逻辑卷的详细信息,可使用卷组名作为参数,以显示该卷组中的所有逻辑卷信息,若不指定卷组名,则显示全部逻辑卷信息

②、格式:lvdisplay 卷组名 逻辑卷名      显示卷组中逻辑卷信息

lvdisplay                                  显示所有逻辑卷信息

③、例:lvdisplay  /dev/abc/abc01

8)lvextend命令

①、概述:动态扩展逻辑卷的空间,可以从所在卷组中分割额外的空间进行扩展,只需指定增加的容量大小及逻辑卷文件位置即可,前提是该卷组中还有未分配的磁盘空间,否则需要先扩充卷组

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

③、例:lvextend -L +10G /dev/abc/abc01         将abc卷组中剩余的空间给abc01逻辑卷中新增10G ,最后可lvdisplay查看一下lv扩展是否成功

注:如果未生效可以使用刷新命令

命令:xfs_growfs /dev/卷组名/逻辑卷名——刷新xfs文件系统容量

resize2fs /dev/卷组名/逻辑卷名——刷新ext4文件系统容量

三、设置磁盘配额

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

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

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

1、磁盘配额的概述

1)实现磁盘配额的条件

①、需要Linux内核支持

②、安装xfsprogs与quote软件包

2)Linux磁盘限额的特点

①、作用范围:针对指定的文件系统(分区)

②、限制对象:用户账号和组账号

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

④、限制方法:软限制、硬限制(软限制:发出警告提示;硬限制:直接中断执行)

2、磁盘配额步骤

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

步骤2:编辑用户和组账号的配额设置

步骤3:验证磁盘配额功能

步骤4、查看磁盘配额使用情况

四、CentOS 7 中设置磁盘配额的步骤

1、检查是否已经安装 xfsprogs 和xfs_quote软件包

安装:rpm -q xfsprogs        检查是否已经安装xfsprogs

rqm -q quota            检查是否已经安装quote

yum install -y xfsprogs quota   如果未安装使用yum install命令安装即可

2、以支持配额功能的方式挂载文件系统

添加usrquota、grpquota 挂载参数

格式:mount -o usrquota,grpquota /dev/卷组名/逻辑卷名

3、编辑用户和组账号的配额设置

1)useradd zhangsan      创建zhangsan用户

passwd  zhangsan

2)使用xfs_quota命令编辑配置设置

格式:xfs_quota -x -c 'limit -u bsoft=N bhard=N isoft=N ihard=N 用户名' 挂载点

3)例:xfs_quota -x -c 'limit -u bsoft=80M bhard=100M  isoft=40 ihard=50 zhangsan' /opt/  /opt为指定磁盘配额的分区

常用选项

-x∶ 表示启动专家模式,在当前模式下允许对配额系统进行修改的所有管理命令可用

-c∶ 表示直接调用管理命令

-u∶ 指定用户账号对象

-g∶ 指定组账号对象

bsoft∶ 设置磁盘容量的软限制数值(默认单位为 KB)

bhard∶ 设置磁盘容量的硬限制数值 (默认单位为 KB)

isoft∶设置磁盘文件数的软限制数值

ihard∶设置磁盘文件数的硬限制数值

4、限制命令

1)仅限制磁盘容量

xfs_quota -x -c 'limit -u bsoft=80M bhard=100M zhangsan' /opt/

2)仅限制文件数

xfs_quota-x -c 'limit -u isoft=4 ihard=5 zhangsan' /opt/

3)查看zhangsan磁盘容量限制

xfs_quota -c 'quota -uv zhangsan' /opt/

4)查看zhangsan 文件数限制

xfs_quota -c 'quota -iuv zhangsan' /opt/

5、验证磁盘配额功能

chmod 777 挂载点

su 用户名

cd 挂载点

dd if=/dev/zero of=挂载点/test.txt bs=10M, count=12 #验证磁盘容量超限

touch {1..20}.txt    验证磁盘文件数超限

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

“if=”          指定输入设备(或文件)

“of=”         指定输出设备(或文件)

“bs=”         指定读取数据块大小

“count=”   指定读取数据块的数量

/dev/zero “零”设备文件,可以无限的提取空字符,常用来生成一个特定大小的文件

6、查看磁盘配额使用情况

1)格式:xfs_quota -x -c 'report 选项'

2)常用选项

-a 代表所有用户账号和组账号

-b  代表容量

-i   代表文件数量

-h  代表人性化显示

LVM与磁盘配额的更多相关文章

  1. 解析Linux中LVM与磁盘配额

    LVM 逻辑卷管理 LVM 概述 LVM 是 Linux 操作系统中对磁盘分区进行管理的一种逻辑机制,它是建立在硬盘和分区之上.文件系统之下的一个逻辑层,在建立文件系统时屏蔽了下层的磁盘分区布局,因此 ...

  2. Linux 系统管理——文件系统与LVM、磁盘配额实例

    1.为主机增加80G SCSI 接口硬盘 2.划分三个各20G的主分区 3.将三个主分区转换为物理卷(pvcreate),扫描系统中的物理卷 4.使用两个物理卷创建卷组,名字为myvg,查看卷组大小 ...

  3. raid,磁盘配额,DNS综合测试题

    DNS解析综合学习案例1.用户需把/dev/myvg/mylv逻辑卷以支持磁盘配额的方式挂载到网页目录下2.在网页目录下创建测试文件index.html,内容为用户名称,通过浏览器访问测试3.创建用户 ...

  4. 1-16-2 LVM管理和ssm存储管理器使用&磁盘配额

    ssm存储管理器使用&磁盘配额 ssm存储管理器使用 系统存储管理器的使用 系统存储管理器(又称ssm,即system-storage-manager),是RHEL7/CentOS7新增的功能 ...

  5. 1-16-1 LVM管理和ssm存储管理器使用&磁盘配额

    大纲: 1-1- LVM逻辑卷的管理 1-2- SSM管理工具的使用 1-3- 磁盘配额技巧 ====================================== 问题描述: 当我们需要在一个 ...

  6. 1-18-2 LVM管理和ssm存储管理器使用&磁盘配额 (二)

    LVM管理和ssm存储管理器使用&磁盘配额  (二) 内容如下: ü  LVM快照 ü  ssm存储管理器的使用 ü  磁盘配额 第1章 LVM快照 lvm快照:为了保持系统的一致性,我们先做 ...

  7. 1-18-1 LVM管理和ssm存储管理器使用&磁盘配额(一)

    LVM管理和ssm存储管理器使用&磁盘配额(一) LVM逻辑卷的管理 问题:对于生产环境下的服务器来说,如果存储数据的分区磁盘空间不够了怎么办? 因为如果要把一个分区的内容都拷贝到另一个分区上 ...

  8. Linux磁盘配额与LVM

    一.LVM概述  逻辑卷管理 Logical Volume Manager二.LVM机制的基本概念三.LVM的管理命令  ① 主要命令  ② ==LVM逻辑卷操作流程==  ③ 举例四.磁盘配额概述  ...

  9. LVM磁盘配额

    目录 一.LVM概述 1.1.逻辑卷管理 1.2.LVM机制的基本概念 二.LVM管理命令 三.磁盘配额概述 3.1.实现磁盘配额的条件 3.2.Linux磁盘限额的特点 3.3.常用命令及选项 3. ...

随机推荐

  1. Redis 存储对象信息是用 Hash 还是 String

    Redis 内部使用一个 RedisObject 对象来表示所有的 key 和 value,RedisObject 中的 type,则是代表一个 value 对象具体是何种数据类型,它包含字符串(St ...

  2. @Aspect 注解使用详解

    AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术.AOP是OOP的延续,是软件开发中的一个热点, ...

  3. 团队任务拆解$\alpha$

    项目 内容 班级:2020春季计算机学院软件工程(罗杰 任健) 博客园班级博客 作业要求 团队任务拆解 我们在这个课程中的目标 提升团队管理及合作能力,开发一项满意的工程项目 这个作业对我们实现目标的 ...

  4. oracle 碎片管理和数据文件resize释放表空间和磁盘空间(以及sys.wri$_optstat_histgrm_history过大处理)

    随着互联网的快速发展,各行各业的数据量也是与日俱增,而数据库的数据量也是直线增长,但是,如果表DML太多,则可能会在高水位线以下出现太多空白. 因此,只能将数据文件缩小到高水位线,因为高水位线以下有一 ...

  5. mysql无列名注入

    0x00 原理   mysql无列名注入是报错注入的一个变种,前提是已知表名,但是不知道列名,或者只知道部分列名,可通过报错注入拼接查询自身表,当自表被拼接时,由于存在重复属性列,会将列信息报错返回, ...

  6. ruby基础(二)

    ruby语法基础 1.方法 方法时对象定义的与该对象相关的操作.在Ruby中,对象的所有的操作都被封装成 方法. 语法糖:语法糖是一种为了照顾一般人的习惯而产生的特殊语法. ruby中一切数据都是对象 ...

  7. 【转载】linux-查询rpm包相关安装、卸载脚本

        测试过程中,有时要测试开发自己打的rpm包,为了确认打包正确,需要查询rpm包相关安装.卸载脚本,可以使用命令:   [root@6 /]#rpm -q --scripts mysql pos ...

  8. mysql左连接和分组实例

    例: 需求:查询A表中的所有列,并查询A表中的数据(ID)在B表中出现的次数,然后按model排序,最后所有结果在一张表中展示 A表结构: B表结构: ini_device_policy表中id与in ...

  9. 收购公司、孵化(产品)和被收购的20个短篇故事-BI产品的历史

    原文地址: 20 short tales of acquiring companies, incubating (ideas into products) and being acquired. | ...

  10. python 定时任务APScheduler 使用介绍

    python 定时任务APScheduler 使用介绍   介绍: APScheduler的全称是Advanced Python Scheduler.它是一个轻量级的 Python 定时任务调度框架. ...