一、LVM简介
LVM(Logical Volume Manager)逻辑卷管理是在Linux2.4内核以上实现的磁盘管理技术.
名词解释:
PV(Physical Volume):物理卷,处于LVM最底层,可以是物理硬盘或者分区。
PE(Physical Extend):物理区域,PV中可以用于分配的最小存储单元,可以在创建PV的时候制定(默认为4MB),如1M, 2M, 4M, 8M, 32M, 64M…组成同一VG中所有PV的PE大小应该相同。
VG(Volume Group):卷组,建立在PV之上,可以含有一个到多个PV。
LV(Logical Volume):逻辑卷,建立在VG之上,相当于原来分区的概念。不过大小可以动态改变。
二、LVM的创建
1.首先我们要创建两个分区为接下来的LVM做准备,如:添加一块空硬盘sdb,在上面创建了两个分区sdb1和sdb2各500M。(注:两块盘或分区大小需要一样)
2.用pvcreate命令在新建的分区上创建PV。 如:pvcreate /dev/sdb1 /dev/sdb2 。创建完后我们可以用pvs查看或者pvdisplay查看详细信息
#pvcreate /dev/sdb1 /dev/sdb2
#pvs
#pvdisplay
3.使用vgcreate命令创建一个VG组,并将我们创建的两个PV加入VG组。如:vgcreate test_vg1 /dev/sdb1 /dev/sdb2 。创建完用vgs和vgdisplay命令查看卷组信息及详细信息
#vgcreate test_vg1 /dev/sdb1 /dev/sdb2
#vgs
#vgdisplay
4.使用lvcreate命令从VG中创建一个逻辑卷:lvcreate -L 200M -n lv1 test_vg1 (注:-L参数指定大小;-n参数指定创建的逻辑卷的名称,后面跟的test_vg1为卷组名;)
#lvcreate -L 200M -n lv1 test_vg1
#lvs
#lvsdisplay
5.使用mkfs命令对创建的卷组进行格式化
#mkfs.ext4 /dev/test_vg1/lv1
6.创建一个空目录,再把创建好的逻辑卷挂载上就可以使用了。
#mount /dev/test_vg1/lv1 /disk1
三、删除逻辑卷
#lvremove /dev/test_vg1/lv1
#pvremove test_vg1
#pvremove /dev/sdb1 /dev/sdb2
【注:1.执行上述命令清理不掉时,可加--force命令清理;
2.逻辑卷remove报错:"Logical volume ob_vg/docker_home contains a filesystem in use." 可用如下办法清理
lsof | grep docker_home 很可能查询不到占用的文件
fuser -kuc /dev/ob_vg/docker_home 该操作会kill掉所有占用该文件的进程】
8.删除整个逻辑卷
1、先通过umount命令卸载掉逻辑卷lvdata1
2、修改/etc/fstab里面逻辑卷的挂载信息,否则系统有可能启动不起来。
3、通过lvremove 删除逻辑卷lvdata1
4、通过vgremove 删除卷组vgdata
5、通过pvremove 将物理卷转化成普通分区。