目录
一、LVM概述
1.1LVM
Logical Volume Manager ,逻辑卷管理
能够在保持现有数据不变的情况下动态调整磁盘容量,从而提高磁盘管理的灵活性
/boot分区用于存放引导文件,不能基于LVM创建
1.2 LVM机制的基本概念
PV(物理卷) 物理卷是LVM机制的基本存储设备,通常对应为一个普通分区或整个硬盘。创建物理卷时,会在分区或硬盘的头部创建一个保留区块,用于记录LVM的属性,并把存储空间分割成默认大小为4MB的基本单元(PE)从而构成物理卷(例如: /dev/sdb1 /dev/sdc1)
PE的值可以是4MB、8MB、16MB、32MB、64MB PE越小硬盘利于率越高,但是每个VG块的最大数是65534,所以PE的大小决定了VG卷组的大小
VG(卷组) 有一个或多个物理卷组成一个整体即成为卷组,在卷组中可以动态的添加或移除物理卷
**LV (逻辑卷)**逻辑卷建立在卷组织上,与物理卷没有直接关系。对于逻辑卷来说,每一个卷组就是一个整体,从这个整体中切除一小块空间,作为用户创建文件系统的基础,这一小块空间就称为逻辑卷。使用mkfs等工具在逻辑卷上创建文件系统
1.3 LVM的管理命令
主要命令:
pvcreate 设备名1 [设备名2... ...]
vgcreate 卷组名 物理卷名1 物理卷名2
lvcreate -L 容量大小 -n 逻辑卷名 卷组名
lvextend -L +大小 /dev/卷组名/逻辑卷名
1.4、LVM应用
LVM操作主要命令步骤:
1.关闭主机,添加两块新硬盘,重启主机
或使用代码扫描
echo "- - -" > /sys/class/scsi_host/host0/scan
2.先使用fdisk工具将磁盘设备/dev/sdb、/dev/sdc划分主分区sdb1、sdc1并且把分区类型的ID标记号码改为“8e”
fdisk /dev/sdb
fdisk /dev/sdc
3.创建物理卷 pvcreate /dev/sdb1 /dev/sdc1
4.创建卷组,卷组名为vgname1 vgcreate vgname1 /dev/sdb1 /dev/sdc1
5.创建逻辑卷,逻辑卷名为lvname1容量为20GB 生产的文件路径为/dev/vgname1/lvname1
lvcreate -L 20G -n lvname1 vgname1
6.对逻辑卷进行格式化,创建XFS文件系统,并且挂载到/opt/ky17目录下
mkfs -t xfs /dev/vgname1/lvname1
mkdir /opt/ky17
mount /dev/vgname1/lvname1 /opt/ky17
df -Th
7.再扩展
vgextend vgname1 /dev/sdc2
lvextend -L +10G /dev/vgname1/lvname1
xfs_growfs /dev/vgname1/lvname1 //刷新xfs文件系统容量
resize2fs /dev/vgname1/lvname1 //刷新ext4类型文件系统容量
创建LVM流程:
pvcreate 创建pv --> vgcreate 创建卷组 --> lvcreate 创建逻辑卷 --> mkfs.xfs lv格式化 -->mount 挂载
删除LVM流程:
umount 卸载 -->lvremove lv移出卷组中所有逻辑卷 -->vgremove vq移出卷组 --> pvremove 移出 pv
调整xfs分区大小(只能增大):
lvextend -L 120G /dev/mapper/centos-root ###增大至120G
lvextend -L +20G /dev/mapper/centos-root ###增加20G
xfs_growfs /dev/mapper/centos-root ###执行调整
###ext2/ext3/ext4的调整命令是resize2fs:
resize2fs /dev/mapper/ centos-root
二、磁盘配额
2.1 磁盘配额的作用
当Linux根分区的磁盘空间耗尽时,Linux操作系统将无法再建立新的文件,同时也可能会出现服
服程序崩溃、系统无法启动等故障。
为了避免在服务器中出现类似磁盘空间不足的问题,可以启用磁盘配额功能,对用户在指定文件
系统(分区)中使用的磁盘空间、文件数量进行限制,以防止个别用户恶意或无意间占用大量磁盘
空间,从而保持系统存储空间的稳定性和持续性
2.2实现磁盘限额的条件
1.需要Linux内核支持
2.安装xfsprogs与quota软件包
2.3 Linux磁盘限额的特点
1.作用范围:针对指定的文件系统(分区)
2.限制对象:用户账号、组账号
3.限制类型:磁盘容量、文件数量
4.限制方法:软限制、硬限制
软限制:指定一个软性的配额数值(如: 480MB 磁盘空间 、180个文件 ),在固定的宽限期(默认为七天)内允许暂时超过这个限制,但系统会给出警告信息
硬限制:指定一个硬性的配额数值(如:500MB磁盘空间 、200个文件),是绝对禁止用户超过的
限制值,当达到硬限制值时,系统也会给出警告并禁止继续写入数据。硬限制的配额值应大于相应
的软限制值,否则软限制将失效
2.4 CentOS7中设置磁盘配额步骤
1、检查是否已安装xfsprogs和xfs_quota软件包
rpm -q xfsprogs quota
yum install -y xfsprogs quota
2、以支持配额功能的方式挂载文件系统
umount /dev/vgname1/lvname1 ###解除之前的挂载
mount -o usrquota,grpquota /dev/vgname1/lvname1 /opt ###添加挂载参数"usrquota,grpquota"用于增加对用户、组配额功能的支持
或者
vim /etc/fstab
/dev/vgname1/lvname1 /opt xfsdefaults,usrquota,grpquota 0 0
umount / dev / vgname1/ lvname1
mount -a ###-a选项,将/etc/fstab的所有内容重新加载
3、编辑用户和组账号的配额设置
useradd lisi
passwd lisi
xfs_ quota -x -c 'limit -u bsoft=80M bhard=100M isoft=40 ihard=50 lisi' /opt/
-x:表示启动专家模式,在当前模式下允许对配额系统进行修改的所有管理命令可用。
-c:表示直接调用管理命令。
-u:指定用户账号对象
-g:指定组账号对象
bsoft:设置磁盘容量的软限制数值(默认单位为KB)。
bhard:设置磁盘容量的硬限制数值(默认单位为KB)。
isoft:设置磁盘文件数的软限制数值。
ihard: 设置磁盘文件数的硬限制数值。
xfs_quota -x -c 'limit -u bsoft=80M bhard=100M lisi' /opt/ ###仅限制磁盘容量
xfs_quota -x -c 'limit -u isoft=4 ihard=5 lisi' /opt/ ###仅限制文件数
xfs_quota -c ' quota -uv lisi' l /opt/ ###查看lisi磁盘:容量限制
xfs_quota -c 'quota -i -uv lisi' /opt/ ###查看lisi文件数限制
4、验证磁盘配额功能
chmod 777 /njzb_xm
su lisi
cd /njzb_xm
dd if=/dev/zero of=/njzb_xm/kgc.txt bs=10M count=12 ###验正磁盘容量超限
touch { aa ,bb, cc,dd,ee, ff) .txt
touch test{ 1..6 }.txt ###验证磁盘文件数超限
dd命令是一个设备转换和连续复制命令
"if=”指定输入设备(或文件)
"of="指定输出设备(或文件)
"bs=”指定读取数据块的大小
"count="指定读取数据块的数量
/dev/zero "零"设备文件,可以无限的提供空字符。常用来生成一个特定大小的文件。
5、查看配额使用情况
xfs_quota -x -c 'report -aibh' ###查看所有可用分区的磁盘容量配额使用情况
查看磁盘配额
report常用选项:
-u: 对用户查看
-g: 对组查看
-a: 查看所有可用分区的配额使用报告
-b: 查看磁盘容量
-i: 查看文件数
三、总结
1.物理卷管理
2.卷组管理
3.逻辑卷管理
4.磁盘配额的作用范围、限制对象、限制类型、限制方法
5.磁盘配额管理