LVM与磁盘配额
一、LVM概述
(一)LVM逻辑卷Logical Volume Manager
1.能够在保持现有数据不变的情况下动态调整磁盘容量,从而提高磁盘管理的灵活性
2./boot分区用于存放引导文件,不能基于LVM创建
(二)LVM机制的基本概念
- PV(物理卷):物理卷是LVM机制的基本存储设备,通常对应为一个普通分区或整个硬盘。创建物理卷时,会在分区或硬盘的头部创建一个保留区块,用于记录LVM的属性,并把存储空间分割成默认大小为4MB的基本单元(PE),从而构成物理卷
- VG(卷组):由一个或多个物理卷组成一个整体,即称为卷组,在卷组中可以动态地添加或移除物理卷
- LV(逻辑卷):从卷组中分割出的一块空间,形成逻辑卷。使用mkfs等工具可在逻辑卷上创建文件系统
(三)LVM的管理命令
功能 | 物理卷管理 | 卷组管理 | 逻辑卷管理 |
---|---|---|---|
Scan扫描 | pvscan | vgscan | lvscan |
Create建立 | pvscreate | vgcreate | lvcreate |
Display显示 | pvdisplay | vgdisplay | lvdisplay |
Remove删除 | pvremove | vgremove | lvremove |
Extend扩展 | vgextend | lvextend | |
Reduce减少 | vgreduce | lvreduce |
(四)LVM操作主要命令步骤
1.关闭主机,添加两块新硬盘,重启主机
2.先使用fdisk工具将磁盘设备/dev/sdb、/dev/sdc划分出主分区sdb1、sdc1,并且把分区类型的ID标记号改为“8e”
fdisk /dev/sdb —>n —>t 8e
fdisk /dev/sdc—>n —>t 8e
3.创建物理卷
pvcreate /dev/sdb1 /dev/sdc1
4.创建卷组,卷组名为abc1
vgcreate abc1 /dev/sdb1 /dev/sdb2
或 vgcreate abc1 /dev/sd[bc]1
5.创建逻辑卷,逻辑卷名为abc,容量为8G,生成的文件路径为/dev/abc1/abc
vcreate -L 8G -n abc abc1
6.对逻辑卷进行格式化,创建XFS文件系统,并挂载到/opt目录下
mkfs -t xfs /dev/abc/abc1
mkdir /ABC
mount /dev/abc1/abc /ABC
df -Th
7.再扩容
vgextend abc1 /dev/sdc2 (如果sdc没有载分区直接输入sdc)
lvextend -L +5G /dev/abc1/abc 没有+号则表示扩展到指定容量
xfs_growfs /dev/abc1/abc ext4:resize2fs /dev/abc1/abc
二、磁盘限额
(一)实现磁盘限额的条件及特点
1.需要Linux内核支持
2.安装xfsprogs与quota软件包
3.磁盘限额的特点
- 作用范围:针对指定的文件系统(分区)
- 限制对象:用户账号、组账号
- 限制类型:磁盘容量、文件数量
- 限制方法:软限制、硬限制
(二)设置磁盘配额步骤
当Linux分区的磁盘空间耗尽时,Linux操作系统将无法再建立新的文件,同时也可能会出现服务程序崩溃、系统无法启动等故障。
为了避免在服务器中出现类似磁盘空间不足的问题,可以启用磁盘配额功能,对用户在指定文件系统(分区)中使用的磁盘空间、文件数量进行限制,以防止个别用户恶意或无意间占用大量磁盘空间,从而保持系统存储空间的稳定性和持续可用性
1.检查是否已安装xfsprogs和xfs_quota软件包。在CentOS系统中,不同的文件系统使用不同磁盘配额配置管理工具。例如,XFS文件系统通过xfs_quota工具进行管理:EXT3/4文件系统通过quota工具进行管理
rpm -q xfsprogs quota
yum install -y xfsprogs
2.以支持配额功能的方式挂载文件系统
umount /dev/abc1/labc
mount -o usrquota,grpquota /dev/abc1/abc 添加挂载参数“usrquota,grpquota”用于增加对用户、组配额功能的支持
或者
vim /etc/fstab 添加参数
/dev/abc1/abc /ABC xfs defaults,usrquota,grpquota 0 0
:wq
umount /dev/abc1/abc
mount -a 将/etc/fstab的所有内容重新加载
3.编辑用户和组账号的配额设置
useradd zhangsan
passwd 123456
xfs_quota -x -c 'limit -u bsoft=80M bhard=100M isoft=40 ihard=50 zhangsan' /ABC/
常用选项解释
-x表示启动专家模式,在当前模式下允许对配额系统进行修改的所有管理命令可用
-c表示直接调用管理命令-u指定用户账号对象
-g指定组账号对象
bsoft设置磁盘容量的软限制数值(默认单位KB)
bhard设置磁盘容量的硬限制数值(默认单位为KB)
isoft设置磁盘文件数的软限制数值
ihard设置磁盘文件数的硬限制数值
——>仅限制磁盘容量
xfs_quota -x -c 'limit -u bsoft=80M bhard=100M zhangsan' /ABC/
——>仅限制文件数
xfs_quota -x -c 'limit -u isoft=4 ihard=5 zhangsan' /ABC/
查看zhangsan磁盘容量限制
xfs_quota -c 'quota -uv zhangsan' /ABC/
查看zhangsan文件数限制
xfs_quota -c 'quota -i -uv zhangsan' /ABC/
4.验证磁盘配额功能
chmod 777 /ABC 配置所有用户可读可写可执行
su zhangsan
cd /ABC
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 “零”设备文件,可以无限的提供空字符。常用来生成一个特定大小的文件