LVM详解笔记pv-vg-lv创建和扩展

时间:2023-02-08 08:21:27

LVM

Logical Volume Manager(逻辑卷管理)

是Linux环境下对底层磁盘的一种管理机制(方式),处在物理磁盘和文件系统之间.

名词:

PV (Physical Volume)物理卷

VG (Volume Group)卷组

LV (Logical Volume)逻辑卷

 

最小存储单元:总结

名称      最小存储单位

硬盘      扇区(521字节)

文件系统    block(1K或4K)

raid      chunk(521K) mdamd -c 命令可以指定大小

LVM      PE(16M自己定义)

 LVM详解笔记pv-vg-lv创建和扩展

 

实验开始:

1.准备工作    分区 fdisk /dev/sdb (3个)

2.制作PV     #pvcreate /dev/sdb{1,2}  #就是把物理磁盘分区做成物理卷

3.制作VG  #vgcreate Vg1 /dev/sdb1 /dev/sdb2  #都把生产好的PV统一加入一个组里面Vg1,进行下一步的重新分区等..

4.制作LV  #lvcreate -n LV1 -L 1.5G Vg1  # -n 指lv的name  # -L指定大小 (在Vg1组里面分多少给LV1)

 

创建指定PE的VG:  #vgcreate -s 16M Vg1 /dev/sdb1 /dev/sdb2

 LVM详解笔记pv-vg-lv创建和扩展

格式化挂载使用: 

#mkfs.ext4 /dev/Vg1/LV1

#mount /dev/Vg1/LV1 /opt/

 

各种查看命令

#pvs  #pvscan  #pvdisplay

#vgs  #vgscan  #vgdisplay

#lvs  #lvscan  #lvdisplay 

 

扩展:

#lvextend -L +300M /dev/Vf1/LV1 #加300M空间

#df -h #发现空间没变  ,上面只是扩展了LVM,没有扩展上层的文件系统,所以扩展了LV,在扩展文件系统的(重置刷新)

centos6 : #resize2fs /dev/Vg1/LV1

centos7: #

CentOS7.0的默认文件系统类型是 Xfs 其对应的调整命令是 xfs_growfs 不同文件系统类型对应的创建、检查、调整命令不同,要注意区分。

 

运行了上面的命令,就算扩容好了.

 

下面是 VG的扩展(新加硬盘sdb3):

#vgextend Vg1 /dev/sdb3

 

#pvs #查看sdb3已经在列表了

 

LV缩减:将逻辑卷LV1缩减

lvm支持在线缩小,但是ext4文件系统不支持在线缩小,btrfs支持在线缩小.

Btrfs简介:一直使用ext2/3,ext文件系统以其卓越的稳定性成为了事实上的Linux标准文件系统,今年来ext2/3暴露出了一些扩展性问题,于是便催生了ext4,(过渡) ext4作者也盛赞brtfs并将成为下一代Linux标准文件系统.

Btrfs的特性:

首先,扩展性(scalability)相关的特性,btrfs最重要的设计目标是应对大型机器对文件系统的扩展性要求,整体性能而不会随着系统容量的增加而降低.

其次是数据一致性(data integrity)相关的特性.

第三是和多设备管理相关的特性,Btrfs支持创建快照(snapshot)和克隆(clone).

最后,这些特性是比较先进的技术,能够显著提高文件系统的时间,空间性能,包括延迟分配,小文件的存储优化,目录索引等.

缩减例子:

#resize2fs  /dev/Vg1/LV1 1000M  #ext4格式 直接输入提示在线缩减不支持 所以先umount 卸载

正确步骤:

#umount /opt/ #先卸载挂载

#e2fsck -f /dev/Vg1/LV1   #检查文件系统有啥错误

#resize2fs /dev/Vg1/LV1 1000M   #centos 6

#lvreduce -L 1000M /dev/Vg1/LV1

#mount ... #把缩小的挂载上

扩文件系统:先扩LVM,然后扩文件系统
缩减文件系统,先缩减文件系统,在把LVM缩小

  

VG缩减:

缩减时,可以不卸载正在使用中的LV.另外,只能缩减没有被使用的pv,否则会提示一下内容:

(使用中... Physical volume "/dev.sdb1" still in use)[如果执意想缩减,先把sdb1逻辑卷干掉]

#vgreduce Vg1 /dev/sdb1

 

LVM删除:先umount 然后删除(从上往下lv-vg-pv)

#lvremove /dev/Vg1/LV1  #删除逻辑卷

#vgremove Vg1  #删除卷组

#pvremove /dev/sda5  #删除物理卷

 

LVM快照功能:

 

 两大功能1.克隆虚拟机2.实时备份

原来有一个lv的基础上

#lvcreate -s -n lv_NAME_bak -L 200M /dev/Vg1/LV1

#创建一个名字为Lv_NAME_bak,大小为200M的快照   -s 是快照snapshot,-n是name

 #lvs

 

LVM分配限额:

 限制用户和组对硬盘的使用

需要按照的包#rpm -q quota

1.启用quota磁盘配额功能

分区格式化后挂载:#mount /dev/sdb3 /tmp/sdb3/

#mount -o remount,usrquota,grpquota /tmp/sdb3/

#mount 查看

/dev/sdb3 on /tem/sdb3 type ext4 (rw,usrquota,grpquota)

 

其实上面磁盘已经支持限额了,但是还有一点,就是让这个lv开机也自动挂载(原来讲过)

#vim  /etc/fstab

/dev/sdb3  /tmp/sdb3  ext4  defaults,usrquota,grpquota  0  0

---上面准备工作已经做好

 

3.检查磁盘配额并生产配额文件

#quotacheck -cugv /tmp/sdb3

LVM详解笔记pv-vg-lv创建和扩展

 完了后,目录里面多了2个配置文件(aquota.group  和aquota.user)

注:这个操作要关闭selinux.    setenforce 0 #关闭selinux

#getenforce #查看

更改:#vim /etc/selinux/config

4.用户和组账号的配额设置

#useradd mk #创建用户,建立用户会建立同名组

#eduota -g mk #给这个用户组设置配额,会调出vi编辑器,进行编辑

LVM详解笔记pv-vg-lv创建和扩展

 

5.激活磁盘配额

#quotaon -ugv /tmp/sdb3

 

6.验证

#mkdir /emp/sdb3/test

#chmod 777 /emp/sdb3/test

#su -mk #切换到这个用户下

#cd /tmp/sdb3/test

#dd if=/dev/zero of=mk.txt bs=1K count=70

#rm -rf mk.txt