LVM

Posted sakuyainory

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LVM相关的知识,希望对你有一定的参考价值。

首先什么是LVM呢
它在文件系统和磁盘的中间

文件系统

LVM raid 这就是LVM的位置

磁盘

 

PV是物理卷,VG是卷组,LV是逻辑卷

添加一块磁盘,然后进行分区

然后用rpm -qa |grep lvm
查看有没有这个包
没有的话使用yum install lvm* 来安装

接着使用pvcreate /dev/sdb{1,2}
#sdb是第二块SCSI硬盘,后面的1和2是指这块硬盘
下的第一个和第二个分区,命令是把这两个分区变成物理卷

以上是做物理卷PV (Physical Volume)

这个是卷组VG (Volume Group)
接着在上面的基础上,
使用命令:vgcreate VG1 /dev/sdb1 /dev/sdb2
VG1是卷组的名字,可以随意命名,这个命令是把两
个物理卷放进这个卷组里面


这个是逻辑卷LV (Logincal Volume)
一样是在上面的基础上,
+-命令:lvcreate -n LV1 -L 1.5G VG1
这里的-n指的是名字,LV1是名字,可以随意命名,
后面的-L指的是大小,然后1.5G就是大小了,后面
的VG1表示这个1.5的大小要从VG1这个卷组中划分
出来变成逻辑卷

格式化这个逻辑卷的话就是
mkfs.ext4 /dev/Vg1/LV1
外部设备的Vg1卷组中划分出来的LV1这个逻辑卷
挂载就是
mount /dev/Vg1/LV1 /mnt
挂载这个逻辑卷到mnt这个目录下

 

接下来就是LVM逻辑卷管理
Logincal Volume Manager
它是Linux环境下对底层磁盘的一种管理机制,也可以说
是一种管理方式,在文件系统和磁盘中间

lvextend -L +300M /dev/Vg1/LV1
给这个逻辑卷扩展300M的内存空间
resize2fs /dev/Vg1/LV1
重新载入一下,因为输入了上面的命令扩展内存
,去显示还是和一样的内存大小,我们需要重新
载入才能看见扩展后的大小

vgextend Vg1 /dev/sdb3
添加sdb3这个分区到Vg1这个卷组中去,扩展这个
卷组的空间

 

磁盘读写速度的测试“hdparm -t逻辑卷名称”


pvdisplay 是查看每一个物理卷的大小
vgdisplay 是查看每一个卷组的大小
lvdisplay 是查看每一个逻辑卷的大小
vgcreate -s 16M VG1 /dev/sdb1(红帽子系统的)
vgcreate vg(这是卷组的名字) -s +大小M(必须是2的几次幂)/后面跟你卷组的位置(Centos6.5的)
这里是指定创建时PE的大小 -s可以指定PE大小
PE指的是你创建卷是所占的最小空间

功能/命令 物理卷管理 卷组管理 逻辑卷管理
扫描 pvscan vgscan lvscan
建立 pvcreate vgcreate lvcrea

lvm支持动态缩减
ext4文件系统不支持
btrfs支持动态缩减

btrfs的设计目标就是应对大型机器对文件系统扩展性要求。
它具有扩展性、数据的一致性、
和多设备管理相关的特性
(比如说它支持ext4不能支持的快照和克隆)。

因为ext4文件系统不支持动态缩减,
所以要先卸载掉这个文件系统类型。

e2fsck -f /dev/Vg1/LV1
检查文件系统是否正常工作,这里-f是强制检查的意思

resize2fs /dev/Vg1/LV1 1G
缩小文件系统大小

lvreduce -L 1000M /dev/Vg1/LV1
缩小LV的大小

 

VG的缩减 (VG的缩减就是把里面的物理卷给移除)
在缩减时,可以不卸载正在使用的LV。
但只能缩减没有被使用的PV,不然会提示:
Physical volume "/dev/sdb1" still in use
如果非要移除的话就先把sdb1的逻辑卷先干掉,然后再移除

vgreduce Vg1 /dev/sdb3
这个是把Vg1这个卷组中的sdb3这个物理卷给移除掉


LVM删除 (从上到下的流程)
umount /dev/Vg1/LV1 先卸载逻辑卷
lvremove /dev/Vg1/LV1 删除逻辑卷
vgremove Vg1 删除卷组
pvremove /dev/sdb1 删除物理卷

以上是关于LVM的主要内容,如果未能解决你的问题,请参考以下文章

LVM磁盘管理

什么是逻辑卷管理器lvm?lvm设备的管理

LVM逻辑卷:创建LVM分区实例

LVM卷管理

Linux里面lvm是啥?

linux lvm扩容